【发布时间】:2014-01-15 14:17:06
【问题描述】:
我浏览了这些问题,但没有找到正确的答案。这是我的问题..
我有一些静态文件。这是目录..
/home/user/djangoproject/djangoapp/static
/home/user/djangoproject/templates/base.html(我已经为 django 管理页面修改了一些)
设置 debug = False 后,我已经像这样更改 setting.py
DEBUG = False
ALLOWED_HOSTS = ['*',]
STATIC_URL = '/static/'
STATIC_ROOT = "/home/user/djangoproject/djangoapp/static/"
我的 urls.py 是
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^$',login),# and some more views
)+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
之后,我将所有管理静态信息收集到我的应用程序的自定义静态目录路径中,如下所示..
/home/user/djangoproject/djangoapp/static/admin/css & 所有其他
现在我的问题是,当我使用自定义静态文件时,它可以正常工作,但是例如管理员登录页面和管理员站点,管理员静态文件无法正常工作..那么我在哪里做错了,或者我必须做些什么做。
提前谢谢...
【问题讨论】:
-
你运行
collectstatic命令了吗? -
是的,只有我复制了所有的管理静态文件
-
您的意思是,如果调试为 True,则管理静态文件正确显示?
-
好吧,由于安全或其他原因,
static函数无法与DEBUG设置为False(检查其源代码)一起使用。您必须在您的网络服务器中为包含所有静态文件的目录创建一个别名,请参阅docs.djangoproject.com/en/1.4/howto/static-files/… -
您是否错过了整个文档中关于 runserver 不安全且永远不要在生产中使用的粗体且极其突出的警告?
标签: python django django-admin django-static