渲染管理员静态文件 - DJANGO
问题描述:
我是新来的Django和管理区域的CSS不呈现。首先,我创建了一个管理模块加载的应用程序,这就是我所做的:渲染管理员静态文件 - DJANGO
通过将调试模式更改为false并添加数据库凭证来配置setting.py。然后:
manage.py syncdb
Creating tables ...
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
-
manage.py collectstatic
You have requested to collect static files at the destination
location as specified in your settings.
This will overwrite existing files!
Are you sure you want to do this?
Type 'yes' to continue, or 'no' to cancel: yes
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/base.css'
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/changelists.css'
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/dashboard.css'
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/forms.css'
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/ie.css'
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/login.css'
Copying '/Library/Python/2.7/site-packages/django/contrib/admin/static/admin/css/rtl.css'
(...)
我所得到的,当我开始
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[09/Feb/2013 13:57:53] "GET /admin/ HTTP/1.1" 200 3270
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/wsgiref/handlers.py", line 85, in run
File "/Library/Python/2.7/site-packages/django/core/handlers/wsgi.py", line 241, in __call__
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/wsgiref/handlers.py", line 85, in run
File "/Library/Python/2.7/site-packages/django/core/handlers/wsgi.py", line 241, in __call__
response = self.get_response(request)
response = self.get_response(request)
File "/Library/Python/2.7/site-packages/django/core/handlers/base.py", line 153, in get_response
File "/Library/Python/2.7/site-packages/django/core/handlers/base.py", line 153, in get_response
response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
File "/Library/Python/2.7/site-packages/django/core/handlers/base.py", line 228, in handle_uncaught_exception
response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
File "/Library/Python/2.7/site-packages/django/core/handlers/base.py", line 228, in handle_uncaught_exception
return callback(request, **param_dict)
主页上提供了一个“服务器错误服务器发生了,请联系管理员。“,我可以访问site.com/admin/,但没有css。该项目文件夹看起来是这样的:
--project
----manage.py
----admin
-------css
-------img
-------js
----project
-------setting.py
-------urls.py
-------wsgi.py
-------__init__.py
答
首先,如果你正在运行的开发服务器(带python manage.py runserver
),那么你应该有你的DEBUG
设置为true。此外,它看起来像您的STATIC_ROOT
设置尚未设置(或设置为您的项目的根目录 - 这不是你想要在生产中运行应用程序时想要的)。
在您的settings.py文件中,您需要确保您有django.contrib.staticfiles
包含在INSTALLED_APPS
设置中。然后确保你已经定义了STATIC_URL(我认为它应该默认为/static/
)。假设你在django的开发服务器上使用django 1.4,那么一切都应该正常运行,无需运行collectstatic
。
查看serving static files上的文档。值得注意的是,当您在生产服务器上执行服务时,提供静态文件的过程是不同的。