Pycharm(pythonide)不';自动完成Django模块
我的Python IDE(pycharm)已停止自动完成我的模块(建议)。每次尝试导入django模块后,我都会收到未解析的引用,因此: 来自django的Pycharm(pythonide)不';自动完成Django模块,python,django,init,pycharm,Python,Django,Init,Pycharm,我的Python IDE(pycharm)已停止自动完成我的模块(建议)。每次尝试导入django模块后,我都会收到未解析的引用,因此: 来自django的-工作正常,但是一旦我添加一个“点”,它就会失败,因此来自django.db导入模型的会给我未解决的错误 值得注意的是,在编译引用之后,它确实起作用了 我发现我所有的\uuuu init\uuuu.py文件(无论何处)都不再用python图标标记,而是现在的记事本图标。此外,在我的解释器中打开init文件会给出无颜色标记的文本(无语法突出显示
-工作正常,但是一旦我添加一个“点”,它就会失败,因此来自django.db导入模型的会给我未解决的错误
值得注意的是,在编译引用之后,它确实起作用了
我发现我所有的\uuuu init\uuuu.py
文件(无论何处)都不再用python图标标记,而是现在的记事本图标。此外,在我的解释器中打开init文件会给出无颜色标记的文本(无语法突出显示)。所以我认为Python无法识别这些文件
我的python解释器是带有Django 1.2.4的python 2.6.1,Django安装在:
/Lib/python/2.6/site-packages
(完整目录,而不是egg)
当我从IDE中的外部库中展开sitepackages时,我确实看到了所有.py文件的彩色标记,除了\uuuu init\uuuuu.py
文件。因此,这就是问题所在
(我在谷歌上找到了类似问题的帖子,但没有找到答案……我遇到了完全相同的问题,无法找到明确的答案。只是让缓存失效对我不起作用。问题在于,在某一点上,\uuuu init\uuuuuu.py
文件被注册为文本文件,并扰乱了索引。我解决了这个问题:
- 首选项>文件类型>文本文件
- 从已注册模式列表中删除
\uuuu init\uuuuu.py
。申请
- 等待重新构建索引
- (如果仍不工作)文件>使缓存无效并重新启动
对我有用的简单解决方案:使用pycharm项目选项启动一个新的django项目。尝试使用django导入模块自动完成。如果它工作,切换回您原来的项目和自动完成应该工作良好
我还是不明白为什么会这样 GOTO文件设置语言和框架Python模板语言
在模板语言下拉列表中选择Django
Jetbrains Docs>这里没有任何东西对我有效,但在设置中:
设置>语言和框架>Django
检查“启用Django支持”
为你的项目填写信息
我解决了这个问题:
转到首选项>项目:{YourProject}>Python解释器
我看到“项目解释器”的字段是“2.7…”,但我是用Python3.4编码的,我的项目是用Python3.4创建的。将“项目解释器”字段中的python版本替换为创建Django项目所用的python版本。应用更改并重新启动PyCharm
如果您的项目解释器使用anaconda或etc,您应该将其更改为标准python解释器,该解释器可能位于以下路径(C:\Users\Administrator\AppData\Local\Programs\python\Python37-32\python.exe)
更改python解释器在您的路径中查找django.py[c]文件,很可能这样的文件隐藏了真正的django包。尝试使PyCharm缓存无效。您能提供JetBrains的YouTrack bug tracker系统中您的问题的链接吗?很棒的侦探工作。为我工作。我不知道init.py进入了文本文件列表。我没有理由这么做。为我工作,谢谢。如果可以,我会给你+1000的答案。我已经花了几个小时来讨论这个:)再次感谢!这种情况发生在我无意中创建了一个名为\uuu init\uuu
且没有扩展名的新文件之后(即,当我选择了new->file而不是new->Python file,然后只键入没有扩展名的名称时)。这导致IDE将\uuuu init\uuuu.py
注册为文本文件。谢谢。这对我有用。我没有别的翻译。但在再次选择我的版本时,我注意到Django出现在列表中。在使缓存失效后,自动完成开始工作。这个解决方案对我很有效。仅供参考,在我的PyCharm上,它只显示模板语言
,而不是Python模板语言
。可能是因为版本不同。为了可能有所帮助,在我的案例中设置的默认模板引擎是Jinja而不是django,难怪内置标记(例如comment
endcomment
等)的自动完成无法工作。非常感谢!不好的。我在虚拟环境中工作。
File--> setting--> project:your_project_name --> python interperter