django1.9 不从静态管理加载 css

django1.9 does not load css from static admin

我目前使用的是 django 1.9 版。我尝试创建一个新的超级用户,然后我 运行 服务器并尝试通过导航到 127.0.0.1:8000/admin 通过浏览器登录,但 django 管理页面似乎没有任何 css。当我在浏览器本身中检查元素时,我开始知道它 link 到两个 css 文件,一个是 base.css 另一个是 login.css 但这两个什么都不包含我尝试从浏览器查看它。之后我尝试在安装的 django 目录中找到这些文件,我发现了 base.css 和 login.css 然后我将该文件中的所有代码复制到 base.css 和 login.css 我在浏览器中打开它,然后我得到了漂亮的 django 登录页面,并带有适当的 css。我不知道该怎么办。

这是我的控制台:

Here is the screenshot

我正在使用 python 3.4.3 和 django1.9.0。谢谢

您必须在 settings.py 中设置 STATIC_ROOT、STATIC_URL 和 STATICFILES_DIRS,如下所示:

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

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)

然后尝试 运行:

python manage.py collectstatic

如果您使用的是 django-rest-framework,请参阅 this

您需要将其添加为,

INSTALLED_APPS = (
    ...
    'rest_framework',
)

并在 urls.py 中:

urlpatterns = [
    ...
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

它会自动搜索并捕获所有静态文件。