web-dev-qa-db-ja.com

collectstaticを実行できません

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

どうすれば修正できますか?それ以外の場合、インストールパッケージがありませんか?

59
user3383301

これを試して、

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 を見てください

123
dhana

すべての静的ファイルが収集されるsettings.pyのSTATIC_ROOTにパスを指定する必要があります。例:-

STATIC_ROOT = "app-root/repo/wsgi/static"

STATIC_URL = '/static/'

STATICFILES_DIRS = (
    ('assets', 'app-root/repo/wsgi/openshift/static'),

    )
9
Sheesh Mohsin

任意のサブフォルダーに「静的」フォルダーを作成し、その中に必要なファイルを含めることができます。 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フォルダーに作成されます

1
Mayur Raj
STATIC_ROOT = "/var/www/YourSiteFolder/static/"
STATIC_URL = '/static/'

https://docs.djangoproject.com/en/1.11/howto/static-files/#deployment をご覧ください

0
Abd Rauf

STATIC_ROOTおよびSTATIC_URL の上に STATICFILES_DIRS宣言。

0
ehacinom

このエラーもありました。直した:

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')
0
sebuhi