2016-11-19 9 views
-2

私はcollectstaticを作っても機能しません。静的フォルダを作成してD:\static\に集めます。なぜdjango collectstaticが正しく動作しないのですか?

設定が正しく動作しません。どうして?ここで

は私の設定です:Pythonで

STATIC_URL = '/static/' 

STATICFILES_DIRS = [ 
    os.path.join(BASE_DIR, 'static'), 
    'D:\DjangoProjects\mysite'] 

STATIC_ROOT = '/static/' 
+0

まあ、 'STATIC_ROOT'を' D:\ static \ 'の(UNIXスタイルに相当する)に設定しているので、ファイルが終わるところです... – knbk

+0

私は '\ static \ '文字列リテラルをスキャン中にSyntaxError:EOLになる – kelevra

+0

UNIXスタイルのパス(スラッシュ、 'D:'なし)でなければなりません。しかし、あなたのファイルは 'STATIC_ROOT'_に終り、' D:\ static \ 'を指すように設定しました。ファイルを他の場所に置くには、別のディレクトリを指すように 'STATIC_ROOT'を設定します。 – knbk

答えて

0

、多くの言語のように、バックスラッシュはエスケープ文字です。

STATIC_ROOT = 'D:\\static\\' 

かは、あなたが文字列リテラルのためr''表記を使用することができます:あなたは文字通りのバックスラッシュが必要な場合は、それ自体をエスケープする必要が

STATIC_ROOT = r'D:\static\' 

しかし、Djangoのドキュメントは、あなたがなければならないことを言いますWindowsでもスラッシュを使用しています。これがSTATIC_ROOTとMEDIA_ROOTにも当てはまるかどうかは不明ですが、STATICFILES_DIRSに対するものです。その場合には、STATIC_ROOTはなる:'D:\DjangoProjects\mysite'あなたが書かれている

STATIC_ROOT = 'D:/static/' 

は確かにエラーになり、'D:/DjangoProjects/mysite'でなければなりません。

関連する問題