2016-01-08 16 views
8

私はPyCharmでDjangoプロジェクトに取り組んでいます。残念ながら、PyCharmは私のテンプレートで使用したいテンプレートタグを解決しません。PyCharm - 未解決のライブラリ 'staticfiles'

{% load staticfiles %} 

プロジェクトは、迷惑メール経由でUbuntu VM内で実行されています。実行コンフィギュレーションでは、VM(リモートインタープリター設定)で使用しているvirtualenvについて知っています。

私の設定は次のようになります。

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.humanize', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.sites', 
    'django.contrib.flatpages', 
    'django_extensions'] 

INSTALLED_APPS += get_core_apps(['myapp.dashboard') 

STATICFILES_FINDERS = (
    'compressor.finders.CompressorFinder', 
    'django.contrib.staticfiles.finders.FileSystemFinder', 
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
    'compressor.finders.CompressorFinder', 
) 

STATIC_URL = '/static/' 

BASE_DIR = os.path.dirname(os.path.abspath(__file__)) 

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, '../../../../myfolder/static'), 
) 

はまだ私は警告Unresolved library 'staticfiles'を取得します。他のテンプレートタグと同様の動作を示します。 STATICFILES_DIRSの動的作成が問題になることはありますか?どうすればこの問題を解決できますか?

+0

これは私の質問を解決しません。静的ファイルだけでなく、他のテンプレートタグについてもそうです。 – RodrigoDela

+0

あなたはDEBUGモードですか? – gerosalesc

+0

はい、 'DEBUG = True' – RodrigoDela

答えて

6

INSTALLED_APPSの動的生成が何とかPyCharmを混乱させることが判明しました。これらが動的に作成される場合、template_tagsなどの特定の依存関係は解決できません。素敵なコードナビゲーションかスタティックINSTALLED_APPSを持っているかどうかを判断する必要があるようです。

+0

あなたは正しいです: 'INSTALLED_APPS'を簡単にインポートするとPyCharmが狂ってしまうのです。 –

+0

私は現在、 'settings.py'をモジュール(' __init __。py'ファイルで 'settings'という名前のフォルダ)に変換し、古い' settings.py'コードを別のファイルにコピーして '設定は 'BASE_DIR'を適切に計算するとPyCharmが完全に狂ってしまいます - >あなたはあなたの設定**を**ただ一つのファイル' settings.py'の終わりのストーリーの末尾に持つように強制されます。 –

7

私の場合、これはPyCharmがsettings.pyファイルを見つけられなかったときに起こりました。これは - local_setting、prod_settingなどがあるので、ファイル - >設定 - >言語& Framworks - > Django - >設定に行き、djangoプロジェクトの設定で適切なファイルを選択します。

+0

回答ありがとうございますが、この設定は既にプロジェクト用に設定されています。 – RodrigoDela

+1

これは私の場合の問題でした。 – Ishan

+0

正しい設定を指してからプロジェクトをリロードすることを忘れないでください。 –

3

PyCharmがテンプレートタグを見つけるためにINSTALLED_APPSに最後に割り当てられたように見えます。私は同様の問題に遭遇し、動的に実際のINSTALLED_APPSを生成した後にこれを追加することを回避することができています

if False: 
    INSTALLED_APPS = (
     'django.contrib.auth', 
     'django.contrib.contenttypes', 
     'django.contrib.sessions', 
     'django.contrib.sites', 
     'django.contrib.staticfiles', 
     'autocomplete_light', 
     'django.contrib.admin', 
     'django.contrib.humanize', 
     'comunes', 
     'listados', 
     'gescomercial', 
     'contabilidad', 
     'compras', 
     'almacen') 

きれいではありませんが、これsettings.pyは唯一私が一緒に暮らすことができ、開発マシンで使用されているようそれ。

関連する問題