PyCharm没有正确认识要求 - Python,Django

时间:2015-03-13 05:28:49

标签: python django pycharm

通常需要requirements.txt这样的要求出现:

django-registration

但在INSTALLED_APPS中,它显示为registration。所以当您导入时:

from registration.signals import user_registered

这是有效的,但PyCharm在from registration...中的注册一词下面显示了一条红色波浪线,表示" Package' registration'未列入项目要求"。

我该如何解决这个问题?

更新

我能够找到一种方法让警告消失,但这不是一个好的解决方案。如果您只是将包名称添加到requirements.txt文件中,则警告会消失,但如果您要使用pip进行安装,则该要求无效。例如,我也使用pygooglevoice这是requirements.txt编写的,但是当它在代码中导入时,你写道:

from googlevoice import Voice

这看起来很奇怪,因为我在很多项目中使用PyCharm而且我只是注意到最近我正在研究的项目...

4 个答案:

答案 0 :(得分:12)

这似乎是一个悬而未决的问题

https://youtrack.jetbrains.com/issue/PY-11963

答案 1 :(得分:10)

再次看到这种现象之后,我又做了一些挖掘工作。将某些文件夹设置为源根并重新启动PyCharm后,这些参考警告就消失了。我认为这是PyCharm中的一个错误。

答案 2 :(得分:8)

JetBrains声称这已在2017.2版本中修复:

https://youtrack.jetbrains.com/issue/PY-11963#comment=27-2248728

我可以确认这一点(在IntelliJ IDEA中)。此外,值得仔细检查是否在Settings -> Tools -> Python Integrated Tools -> Package requirements file

中指定了正确的需求文件

答案 3 :(得分:0)

PyCharm应该能够解决这个问题,但事实并非如此。现在,我只是将#noinspection PyPackageRequirements添加到每个导入,并使用此警告来抑制它。我不愿意,但它现在有效。