python 2.7.11 django 1.8.4 错误内容:related Field has invalid lookup: icontains 我原来默认认为在处理外键搜索的时候,django...会自动将该外键的行数据以str()化之后进行搜索,但其实并不是这样的,如果将外键加入到搜索域中,需要明确写出来。...,如果有外键,要注明外键的哪个字段,双下划线 list_display = ('book', 'category') # 在页面上显示的字段,若不设置则显示 models.py 中 __unicode...哪些字段显示,在这里 remark 字段将不显示 admin.site.register(Category, CategoryAdmin) [ 说明 ] 在使用 Django admin 系统中的搜索时可能会出现...admin中配置搜索域是一个外键时的处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考。
一、前言 二、Linux 平台 三、Windwos 平台 一、前言 程序在执行过程中 crash 是非常严重的问题,一般都应该在测试阶段排除掉这些问题,但是总会有漏网之鱼被带到 release 阶段。...因此,程序的日志系统需要侦测这种情况,在代码崩溃的时候获取函数调用栈信息,为 debug 提供有效的信息。...这篇文章的理论知识很少,直接分享 2 段代码:在 Linux 和 Windows 这 2 个平台上,如何用 C++ 来捕获函数调用栈里的信息。 二、Linux 平台 1....捕获异常,获取函数调用栈信息 void sigHandler(int signum, siginfo_t *info, void *ctx) { const size_t dump_size =...利用以上几个神器,基本上可以获取到程序崩溃时的函数调用栈信息,定位问题,有如神助! ----
然而,在我需要使用Python时,我不太喜欢它。找到适合你的语法主题可能很困难,尤其是一旦你习惯了一个主题。...https://atom.io/themes/predawn-syntax 如果您想使用这其中的一种,或者找到适合您自己的主题,可以在主题按钮右侧的搜索栏中搜索它们。...所以在Python中,我试图简单地使用相同的代码,但是将它翻译成Python,看起来像下面这样,我认为这并不是一个好的解决方案。...def test_prime(n): // 函数体 函数调用的另一个主要区别在于:在JavaScript中,函数内部的工作始终在花括号之间,遵循参数;而在Python中,函数以冒号开头,而不是花括号...然后,我们向find_solution函数提供参数2520,函数只检查每个第2520个数字,而不是检查每个数字或每隔一个数字,这允许代码运行得更快。
https://atom.io/themes/predawn-syntax 如果您想使用其中的一种,或者找到您自己的,可以在主题按钮右侧的搜索栏中搜索它们。...https://atom.io/packages/linter-flake8 6)Minimap 包 Minimap不是python特有的,但对于任何编码语言来说都是一个很好的工具。...如果不是,它会增加一个并再次检查,直到找到匹配。所以在Python中,我试图简单地使用相同的代码,但是将它翻译成Python,看起来像这样,并且让我的序言与这实际上不是一个好主意的事实相符。...def test_prime(n): //do stuff 函数调用之间的另一个主要区别在于,在JavaScript中,函数内部的工作始终在大括号之间,并根据参数执行。...在Python中,函数以冒号开头,而不是花括号,函数是在调用该函数的行下面缩进的任何东西。对于我们之前安装的一些软件包,您经常会看到“意外缩进”,让您知道您已经缩进了某些不需要在其中的内容。
https://atom.io/themes/predawn-syntax 如果您想使用其中的一种,或者找到您自己的,可以在主题按钮右侧的搜索栏中搜索它们。...如果不是,它会+1并再次检查,直到找到匹配的数字。所以在Python中,我试图简单地使用相同的代码,但是将它翻译成Python,看起来像这样。让我先写一个事实,这不是一个好主意。...x = 1 y = 2 z = 3 my_array = [1, 2, 3, 4] 3)函数 在JavaScript中,函数使用“function”来定义,并且可以接受一个参数或多个参数: function...def test_prime(n): //do stuff 函数调用之间的另一个主要区别在于,在JavaScript中,函数内部的工作始终在大括号之间,遵循参数。...在Python中,函数以冒号开头,而不是花括号,函数是这一行下面缩进的任何东西。
据Atom官方博客介绍,与Atom类似的编辑器Sublime和TextMate都深受开发者欢迎,但在扩展性上都有所限制,使用起来不是太灵活。...无缝集成使得开发者可以自由搭配Node.js和浏览器API,也可以从一个单一的JavaScript函数里操作文件系统并且写入到DOM。...模块化设计 由一个极简的核心和超过50个开源包构成,如果用户不喜欢某些软件包,他们可以自行替换。...功能全面、开箱即用 Atom在一个现代化的文本编辑器中预装了一些开发者可能期望/需要的功能,例如下面这些: 文件系统浏览器 用于快速打开文件的模糊查找器...在项目里快速的搜索和替换 多种光标选择 多个窗格 代码片段 代码折叠 干净个性化的UI 导入TextMate语法和主题
命令面板(Palette) 在欢迎界面中,我们介绍了Atom中最重要的命令,“命令面板”。如果在编辑器获得焦点时,按下cmd-shift-P,就会弹出命令面板。...这一搜索驱动的菜单可以执行Atom中几乎任何主要的工作。你可以按下cmd-shift-P来搜索命令,而不是在应用的菜单上点来点去来寻找东西。...你也可以使用这个界面来安装新的主题和包,这会在“Atom中的包”一章提到。 你可以通过菜单栏中,“Atom”菜单底下的“Preferences”菜单项,来打开这个设置界面。...当你在Atom中打开一个或者多个目录时,Atom会自动在窗口的一边显示树视图。 树视图允许你浏览和修改文件以及你项目的目录结构。你可以从这个视图中打开、重命名、删除和创建新的文件。...这样能够让你通过输入路径的一部分,在项目中的任何目录中寻找任何文件。 你也可以使用cmd-B只在当前打开的文件中搜索(而不是项目中的每个文件)。这样的搜索只在“缓冲区”或者打开的文件中进行。
下面是一些快捷键的例子,它们在atom-text-editor元素上按下时生效: 'atom-text-editor': 'cmd-delete': 'editor:delete-to-beginning-of-line...}的实例,所有命令在它里面设置,并且可以通过命令面板来获取。...如果你想移除一个你不再用到的快捷键,例如Atom核心中的或者包中的快捷键,应该直接使用unset!。...由获取焦点的元素开始,键表会向上搜索,直到文档的根元素,寻找最具特异性的CSS选择器,它匹配当前DOM元素并且含有匹配按键事件的快捷键通配符。...如果在触发的事件对象上调用了.abortKeyBinding(),会恢复搜索,在相同元素上触发下一个最具特异性的CSS选择器上绑定的事件,或者继续向上搜索。
网友评价:"您可以在一个位置访问命令行、连接到数据库、创建虚拟环境以及管理版本控制系统,从而避免在窗口之间不断切换,从而节省时间。" ...,直观显示代码布局;可拆分窗口,对文件进行多窗口并排编辑,充分利用宽屏显示器空间;支持Python API和扩展包,允许插件增强内置功能; Atom:它是一个使用HTML、JavaScript、...它运行在Electron上(一个使用Web技术构建跨平台应用程序的框架)。Atom可以深度定制,使用CSS / Less调整UI的外观,并使用HTML和JavaScript添加主要功能。...你可以通过Atom包扩展器,在线查找并安装你所需要的软件包,这些软件包可以为Atom添加新的特性和功能。Atom与Git、Github紧密集成,可以在Atom中直接使用。 ...根据搜索的相关性排名来完成整个函数调用,还可以了解其他人如何实时使用该函数,并可在自己的代码库中提供定义和用法。使用Kite可快速获取在线文档、包含近千个带有代码示例的Python库的用法。
在请求头里有一个Range:byte字段来告诉媒体服务器需要请求的是哪一段特定长度的文件内容,对于MP4文件来说,所有数据都封装在一个个的box或者atom中,其中有两个atom尤为重要,分别是moov...虽然moov和mdat都只有一个,但是由于MP4文件是由若干个这样的box或者atom组成的,因此这两个atom在不同媒体文件中出现的顺序可能会不一样,为了加快流媒体的播放,我们可以做的优化之一就是手动把...那么是不是用一个请求就可以播放所有的moov位于mdat之前的视频了呢?...Content-Length表示本次请求的数据长度 Content-Range表示本次请求的数据在总媒体文件中的位置,格式是start-end/total,因此就有Content-Length = end...github上搜索也会发现很多优秀成熟的完整代码,自己实现一整套逻辑遇到的坑会比较多,理解了整套机制后,在第三方的基础上修改是个不错的选择。
Atom是Chromium浏览器的一个特殊的存在,它被设计成一个文本编辑器而不是一个Web浏览器; 每个Atom窗口本质上都是一个本地呈现的网页。 当Atom不自动更新时,性能是非常好的。...TextMate不是一个IDE,但是它却提供了软件包、代码段、宏和范围系统等语言特定的IDE都缺少的功能。...TextMate有一个捆绑包首选项标签,从中可以下载并安装其他捆绑包。捆绑源,实际上是产品驻留在GitHub存储库中的源代码。...Emacs作为JavaScript编辑器,编辑JavaScript的默认模式是在js包中,使用Emacs可以获得更好的语法高亮和linting。...Emacs使用js2模式包,并使用ac-js2自动完成。在Emacs中,你可以使用串行模式获取实时浏览器JavaScript,HTML和CSS交互。
实际上,默认情况中,Atom中所有的功能由超过70种包组成。例如,你在首次启动Atom时看到的欢迎对话框,拼写检查工具,主题和模糊查找工具都是独立的包,它们使用了你所访问的相同API。...列在底下的是发布到atom.io的包,它是Atom包的官方注册处(registry)。设置面板中的搜索操作,会进入atom.io中的包注册处寻找,之后拉回任何匹配你搜索的东西。...包的设置 在Atom安装了一个包之后,那个包会出现在“Package”选项卡下面的侧面板中,同时带着Atom预先安装的所有包。...你可以在”Filter packages by name”文本框中输入内容,来过滤这个列表并找到你想要找的包。 点击一个包的“Settings”按钮会弹出这个包特定的设置窗口。...你可以在“install”选项卡中寻找他们,就像寻找新的包那样。要确保你点击了搜索框旁边的“Themes”切换按钮。 点击主题的标题会弹出它在atom.io上的简介页面,通常会显示它的快照。
看一个好东西,pubchem,业界很有名的分子数据库。 有很多分子数据可以从上面下载, ?...看一个pubchem的python 包 官网信息:https://pubchempy.readthedocs.io/en/latest/ #安装: pip install pubchempy conda...(5090) #获取帮助信息,关于c的 help(c) #查看c的信息 #inchi码 c.inchi 'InChI=1S/C17H14O4S/c1-22(19,20)14-9-7-12(8-10-14...(35, H), Atom(36, H)] #或者不知道名字 #使用同源名来进行搜索 a=pcp.get_synonyms('Aspirin', 'name') #返回了一个列表,列表中的元素是字典 #...%s'%attr)) #你忘掉了了python之禅了吗,那么不好看肯定不是最优 import this The Zen of Python, by Tim Peters Beautiful is better
我们先去翻看Atom的官方文档,查看关于创建插件相关的操作: 首先我们在Atom中打开命令面板,然后输入Generate Package ?...按下回车后,将会弹出一个对话框,在框中输入要建立的包名即可完成一个Package的创建。 ? Atom会生成一套默认文件,并打开一个新的窗口。...入口文件的表现方式为一个JSON对象,可以实现如下几个函数: activate: 当Package被激活时会执行该方法,函数的签名表示会接受一个state参数,该参数是通过serialize方法传递过来的...: 也就是上边说到的那个方法,可以返回一个JSON对象供下次激活后使用 自定义快捷键对应的事件名: 每次Package被触发对应快捷键时都会执行的方法 menus 这里存放的是在应用菜单和编辑区域菜单栏的配置文件...我们在触发Paste操作时,从clipboard中获取,如果剪切板中是图片的话,我们就将它上传并显示到编辑器中。
是解压后的文件夹名),也可以到解压后文件夹下通过npm install安装,安装成功后再次回到Atom中Setting搜索插件会显示已安装,结果如下: ?...继续定义一个合约的构造函数: ?...解释下这段代码: Web3j是我们使用的第三方库 Web3jFactory是android中与节点建立关联的方式 Web3ClientVersion()是我们用来查看版本的函数 .send()很重要,在...web3j中我们调用任何函数或者合约,都需要最后调用send()来发起请求通知节点执行 上面的函数执行完成后得到返回我们可以确认android通过web3j已成功和节点建立了关联,我们来获取一下账户信息...这里web3j有一个相比web3.js不太方便的地方,不支持直接由合约地址来创建合约,所以我们只能通过他所提供的智能合约包装器(其实就是转换成java类),因为在java中合约需要一个明确的类型和内部声明
我有一个习惯,就是不断的记录在工作中反复用到的知识点,原本我很喜欢使用印象笔记和有道云笔记,其一是云笔记的同步功能,其二是云笔记的搜索功能,当你输入的笔记多了之后,你才会发现搜索功能是多么的重要。...在本地使用Atom 加上 Markdown 插件编写笔记。 初期我是这么做: 每天一个页面 这个页面包含当天的待办事项、遇到的问题收集、以及解决办法的思路。...后期,我不这么做了,是因为Atom + Markdown 不支持搜索功能。我需要一个一个翻才能找到我需要的知识。 更改为每月一个页面 同样包含本月的代办事项、遇到的问题、以及解决问题的思路。...,第二个参数是桩函数的函数名,习惯用法是匿名函数或闭包,返回值是一个PatchGuard对象指针,主要用于在测试结束时删除当前的补丁 示例:打桩 ioutil.ReadFile 函数 guard :=...省略前缀 起别名 完整的名称 绝对路径 相对路径 _ 导入包:只是完成初始化操作 init 函数 syc func (o *Once) Do(f func()) # 多次调用,只取一次 var once
成品插件下载地址:https://atom.io/packages/atom-image-uploader 规划 首先,我们确定了需求,要通过可以直接copy文件,然后在Atom中paste即可完成上传的操作...我们先去翻看Atom的官方文档,查看关于创建插件相关的操作: 首先我们在Atom中打开命令面板,然后输入Generate Package image.png 按下回车后,将会弹出一个对话框,在框中输入要建立的包名即可完成一个...image.png 入口文件的表现方式为一个JSON对象,可以实现如下几个函数: activate: 当Package被激活时会执行该方法,函数的签名表示会接受一个state参数,该参数是通过serialize...serialize: 也就是上边说到的那个方法,可以返回一个JSON对象供下次激活后使用 自定义快捷键对应的事件名: 每次Package被触发对应快捷键时都会执行的方法 menus 这里存放的是在应用菜单和编辑区域菜单栏的配置文件...我们在触发Paste操作时,从clipboard中获取,如果剪切板中是图片的话,我们就将它上传并显示到编辑器中。
基于网上看到的评论说Atom什么都好,就是会卡。相反我一点都没感觉到卡,感觉蛮流畅的。而且Atom在1.0后性能大大提升。...(相信社区的力量) 常用快捷键 快捷键 说明 shift + cmd + p 命令版(可以看到所有快捷键) cmd + \ 显示或隐藏目录树 cmd + f 搜索当前文件 cmd+shift+f 搜索整个项目...在整个项目里找到你需要的文件 cmd + t 全项目模糊查找关键字并跳转 cmd + g 查找下一个地方 cmd + F2或cmd+fn+f2 给某一行设置书签显示在行号右侧 Crtl+Shift+M...安装包 1.打开命令行工具 2.搜索包用的是 apm search 3.找到想要的包以后,再用 apm install activate-power-mode 装逼必备,效果相当赞... 必备;格式化代码的,快捷键ctrl-alt-b esformatter 统一代码格式用的 Minimap 推荐;就是Sublime右边那一竖块,显示缩小版的代码 terminal-panel 不是那么好用的
现在是时候来介绍在这一Hackable的编辑器中,真正“Hackable”的部分了。像我们在整个第二章中看到的那样,Atom中很大一部分都由一大堆包组成。...这会有助于你从开源社区中获取代码,并且在许多实例中编写更简单的代码。 你可以在coffeescript.org上面复习CoffeeScript。...Less是源于CSS的简化转换,它向CSS中添加了一些有用的东西,比如变量和函数。你可以在lesscss.org上面复习Less的技巧。...这个文件中的代码可以充分访问到Atom API。如果自定义的代码变得很大,考虑创建一个包,这部分会在“字数统计包”一节中介绍。...例如,如果你在设置中开启了蜂鸣提示音,你可以将以下代码添加到init.coffee,让Atom在每次加载时用蜂鸣提示音向你打招呼。
以及更复杂的文本操作,例如“让我们更改此函数参数列表中的内容,并用(定界”:ci(。 总之,编辑代码时我们需要模态功能。 3 编辑器 下面就具体讲讲前面提到的那些编辑器。...mzlogin/vim-markdown-toc 一个非常酷的软件包,提供了一种在 Markdown 缓冲区中创建目录的方法,并让 neovim 在编辑标头时自动更新 section。...liuchengxu/vista.vim 我经常使用这个包来获取符号树,但我现在不太满意它的输出,可能也会抛弃它。 neoclide/coc.nvim 它是 neovim 目前最好的自动完成引擎。...它能为你做很多事情,其中一些真的给我留下深刻印象: 允许我在函数内选择代码块的重构机制,要求编辑器“将其移至专用函数中”。...它并不是提高你生产力的必要选项,但它会让你在使用 Java 代码库时感到轻松自在,我真的希望在我使用的编辑器中有这么一个插件! VS Code 有最佳的 LSP 实现,并且它的社区是最大的。
领取专属 10元无门槛券
手把手带您无忧上云