Django!!コマンドpython manage.py collectstatic
このエラーが発生する
Django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path
しかし、サーバーは正常に実行できます。
私の静的ファイルの宣言は次のとおりです。
STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIRS = (
('assets', os.path.join(PROJECT_DIR, '../static')),
)
デバッグがtrueに設定されます
DEBUG = True
どうすれば修正できますか?それ以外の場合、インストールパッケージがありませんか?
これを試して、
PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-STATIC_ROOT を見てください
すべての静的ファイルが収集されるsettings.pyのSTATIC_ROOTにパスを指定する必要があります。例:-
STATIC_ROOT = "app-root/repo/wsgi/static"
STATIC_URL = '/static/'
STATICFILES_DIRS = (
('assets', 'app-root/repo/wsgi/openshift/static'),
)
任意のサブフォルダーに「静的」フォルダーを作成し、その中に必要なファイルを含めることができます。 settings.pyで、次のコード行を追加します。
PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
STATIC_URL = '/static/'
python manage.py collectstatic
を実行すると、新しい静的フォルダーが親Appフォルダーに作成されます
STATIC_ROOT = "/var/www/YourSiteFolder/static/"
STATIC_URL = '/static/'
https://docs.djangoproject.com/en/1.11/howto/static-files/#deployment をご覧ください
STATIC_ROOT
およびSTATIC_URL
の上に STATICFILES_DIRS
宣言。
このエラーもありました。直した:
STATIC_URL = '/static/'
if DEBUG:
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
else:
STATIC_ROOT = os.path.join(BASE_DIR,'static')
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')