web-dev-qa-db-ja.com

PyCharmが要件を正しく認識しない-Python、Django

多くの場合、要件はrequirements.txtに次のように表示されます。

Django-registration

ただし、INSTALLED_APPSではregistrationとして表示されます。したがって、次のようにインポートする場合:

from registration.signals import user_registered

これは有効ですが、PyCharmはWordの下に赤い波線を表示しています登録 in from registration...は、「パッケージ '登録'はプロジェクト要件にリストされていません」と表示します。

どうすれば修正できますか?

[〜#〜] update [〜#〜]

警告を消す方法を見つけることができましたが、それは良い解決策ではありません。パッケージ名をrequirements.txtファイルに追加するだけでは警告は消えますが、pipでインストールする場合、その要件は無効になります。たとえば、pygooglevoiceも使用しています。これはrequirements.txtでの記述方法ですが、コードにインポートする場合は次のように記述します。

from googlevoice import Voice

私は多くのプロジェクトにPyCharmを使用しているため、これは奇妙に思えますが、最近取り組んでいるプロジェクトでこれに気づいているだけです...

28
nicorellius

この現象を再び見た後、私はもう少し掘り下げました。特定のフォルダーをソースルートとして設定し、PyCharmを再起動すると、これらの参照警告はなくなりました。これはPyCharmのバグだと思います。

11
nicorellius

これは未解決の問題のようです

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

12
MrJ

JetBrainsは、これはバージョン2017.2で修正されたと主張しています。

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

これを確認できます(IntelliJ IDEAで)。また、正しい要件ファイルがSettings -> Tools -> Python Integrated Tools -> Package requirements file

8
iver56

PyCharmはこれを理解できるはずですが、そうではありません。とりあえず、#noinspection PyPackageRequirementsを各インポートに追加して、この警告を抑制します。私はむしろそうではありませんが、今のところは機能します。

0
Troy Hoffman