繁体   English   中英

django staticfiles收集错误

[英]django staticfiles collection error

我在django中启动了一个新项目,并在与自定义settings.py相同的文件夹中创建了一个开发和测试环境,其设置都正常,直到创建了一个静态文件目录,并尝试收集静态文件但出现错误。 raise ImproperlyConfigured("You're using the staticfiles app " django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path.

这是我的目录

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
if DEBUG:
        MEDIA_URL = '/media/'
        STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), "static", "static-only")
        MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), "static", "media")
        STATICFILES_DIRS = (
        os.path.join(os.path.dirname(BASE_DIR), "static", "static"),
    )

test_settings.py

# -*- coding: utf-8 -*-
from .settings import *

    DEBUG = True
    TEMPLATE_DEBUG = DEBUG


    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.postgresql_psycopg2',
            'NAME': '',
            'USER': 'postgres',
            'PASSWORD': '',
            'HOST': '',
            'PORT': '',
        }
    }

STATIC_ROOT应该是绝对文件系统路径:

STATIC_ROOT = os.path.abspath(os.path.join(os.path.dirname(BASE_DIR), 'static', 'static-only'))

另外,我建议将STATICFILES_DIRS保留在BASE_DIR内部(作为项目/存储库的一部分)而不是外部的目录中。

您应该删除/评论STATICFILES_DIRS运行时./manage.py collectstatic ,并改变STATIC_ROOTSTATIC_ROOT = os.path.join(BASE_DIR, 'static/static-only')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM