静态不加载Django CMS

时间:2015-09-03 10:23:47

标签: django static django-cms

将静态文件移动到另一个目录后,不加载。
我的 settings.py 如下所示:

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

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(DATA_DIR, 'static')
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'src', 'static'),
)
STATICFILES_FINDERS = (
    "django.contrib.staticfiles.finders.FileSystemFinder",
    "django.contrib.staticfiles.finders.AppDirectoriesFinder"
)
INSTALLED_APPS = (
    ...
    'django.contrib.staticfiles',
    ...
)

我想要放在virtualenv的根目录中的所有静态。有文件夹

src(root_dir)-->media      /* uploaded media */
             -->static     /* for css, js etc*/
             -->project_y  /*web-page*/
             -->templates  /*html templates */  

奇怪的是(对我而言)模板和媒体通常从该目录中运行。我已经这样放了他们:

MEDIA_URL = '/media/'
TEMPLATE_DIRS = (
    os.path.join(BASE_DIR, 'templates'
)

如何重新定位静态的任何想法?

1 个答案:

答案 0 :(得分:2)

对于静态文件,您必须collectstatic

python manage.py collectstatic

将从所有STATICFILES_DIRS收集文件并将其放在STATIC_ROOT内。只有在此之后,才能访问静态文件