【发布时间】:2012-11-05 07:19:27
【问题描述】:
在完成python manage.py collectstatic 之后,我发现我可以访问static/css 中的所有内容,但不能访问static/admin。非常清楚:
- 我去:http://mysite.com/static/admin/css/login.css 失败了
- 手动将文件夹
static/admin移动到static/css - 我去:http://mysite.com/static/css/admin/css/login.css 并且工作!
注意 URLS 中从 /static/admin/css/ 到 /static/css/admin/css/ 的变化。这意味着这并不能解决问题,因为模板继续指向第一个 URL。
我知道,提供静态管理文件已在 stackoverflow 中被询问了 100 次,但我仍然无法使其正常工作(而且对于我读过的 cmets,我并不孤单)。似乎没有人提到访问static/css 文件夹和static/anyother_folder 这个奇怪的问题。
一些额外的细节:
collectstatic 没有错误,应用程序 css 没有问题。这就是我的settings.py):
MEDIA_ROOT = join(PROJECT_ROOT,'../media')
MEDIA_URL = '/media/'
STATIC_ROOT = join(PROJECT_ROOT,'../static')
STATIC_URL = '/static/'
我也尝试了弃用 ADMIN_MEDIA_PREFIX,但没有任何结果。
ADMIN_MEDIA_PREFIX = '/static/admin/'
我的nginx配置简单明了。
location /static {
alias /home/the_home/where_the_static_is/static/;
}
location /media {
alias /home/the_home/where_the_media_is/media/;
}
我正在使用最新版本的 Django (1.4.2)。
【问题讨论】:
-
这个问题1 遇到了同样的问题。他说他的环境有问题,不幸的是没有说什么:(。
-
您确定 django.contrib.admin 在您安装的应用程序中吗?如果不是,Collectstatic 不会复制文件。
-
谢谢。 django.contrib.admin 在那里。 collectstatic 运行良好。它将文件放在 static/admin 中,由于无法理解的原因,我无法访问。
-
请启用日志记录并在您请求mysite.com/static/admin/css/login.css时发布 nginx 正在查找的位置的 sn-p
-
谢谢,我终于知道发生了什么。感谢您再次向我指出 nginx。
标签: django django-admin