【Python】解决Django Admin管理界面样式表(CSS Style)丢失问题
配置Django Admin,关于如何启用请参考Django官方文档《Activate the admin site》。但是我在配置过程中登录http://example.com/admin后台时出现样式表丢失的问题,比如说界面变成了这样:

上网搜索了不少文档,多是Apache环境下的解决方案,我配置的是Nginx服务器,所以根据Apache的解决提示进而摸索办法,最终要解决这个问题我这里总结有3步(假设已经配置好admin登录系统):
1. 修改settings.py中STATIC_ROOT为你的static静态文件的物理路径,比如说我静态文件存放在/home/user/www/static中,首先创建www目录下的static文件夹,最后修改settings.py中STATIC_ROOT指向/home/user/www/static。
2. 运行python manage.py collectstatic命令,这将从Django资源包中复制必须的静态文件到STATIC_ROOT指示的static文件夹中,这其中包括admin界面所必须的样式表(style)、图片(image)及脚本(js)等。
这里提示一下,假如不做第1步的话,直接运行这个命令会导致如下的错误提示(最后几行):
File "/usr/lib/python2.7/dist-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 41, in __init__
self.storage = get_storage_class(settings.STATICFILES_STORAGE)()
File "/usr/lib/python2.7/dist-packages/django/contrib/staticfiles/storage.py", line 23, in __init__
raise ImproperlyConfigured("You're using the staticfiles app "
django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting.
其实已经提示需要配置STATIC_ROOT文件了(You’re using the staticfiles app without having set the STATIC_ROOT setting)。
3. 修改Nginx配置,Debian系统下/etc/nginx/nginx.conf或者/etc/nginx/sites-enabled/里面的配置文件,在server节中添加如下内容(请根据实际情况修改):
server {
# ... 其余内容略
location /static {
root /home/user/www;
}
}
此处不修改的话,我测试下来结果貌似默认处理会交由Django,但是依旧会由Django提示Page not found (404)。
完成上面三步后,重新加载相应设置:
invoke-rc.d uwsgi reload |
好了,基本上问题算是解决了,如果有什么不当的地方欢迎指出。
参考资料:
http://wangye.org/blog/archives/572/
【Python】解决Django Admin管理界面样式表(CSS Style)丢失问题的更多相关文章
- 解决Django站点admin管理页面样式表(CSS style)丢失
参照这篇教程激活完django自带服务器的admin管理页面后,照着教程所描述的那样,尝试打开http://127.0.0.1:8000/admin/,发现自己的浏览器显示如下 很明显可以看出,虽然业 ...
- Django笔记 —— Admin(Django站点管理界面)
最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...
- django 用户管理相关的表
Django 用户管理相关的表: create table django_content_type ( /* 内容类型表 */ id ) not null auto_increment, app_la ...
- 4、网页制作Dreamweaver(样式表CSS)
样式表style 制作一个风格统一的网页,需要样式表对颜色.字体等属性的规范,同时也省去在body中多次定义的麻烦,所以一个样式表是必不可少的. 样式表有两种引用的方法:一种是直接写在html的< ...
- 【WordPress】外网访问WordPress时无法加载样式表CSS
情况: 阿里云ECS服务器,用WampServer搭建的WordPress站点,服务端自身访问该站点时显示正常,但外网访问时不能加载样式表CSS的问题. 重要的参考: https://www.doub ...
- python工业互联网应用实战5—Django Admin 编辑界面和操作
1.1. 编辑界面 默认任务的编辑界面,对于model属性包含"choices"会自动显示下来列表供选择,"datetime"数据类型也默认提供时间选择组件,如 ...
- 【Python】django权限管理
参考:http://www.cnblogs.com/esperyong/ 参考:https://docs.djangoproject.com/en/1.8/topics/auth/default/#t ...
- Django后台管理界面
之前的几篇记录了模板视图.模型等页面展示的相关内容,这篇主要写一下后台admin管理界面的内容. 激活管理界面 Django管理站点完全是可选择的,之前我们是把这些功能给屏蔽掉了.记得上篇中Djang ...
- django学习-管理界面、视图
django管理界面 设计背景 为你的员工或客户生成一个用户添加,修改和删除内容的后台是一项缺乏创造性和乏味的工作.因此,django全自动地根据模型创建后台界面. django产生于一个公众页面和内 ...
随机推荐
- Letter Combinations of a Phone Number——简单的回溯算法
Given a digit string, return all possible letter combinations that the number could represent. A map ...
- http中使用json封装数据的性能测试
http中使用json封装数据的性能测试 一个项目使用json封装数据,接口例如: 客户端发送: POST /list.do HTTP/1.1 Host: zoomi.com.cn ...
- CentOS7下Samba的安装与配置
一.Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享 ...
- ASOP编译说明
具体说明https://source.android.com/source/ 源码下载https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/ 1 搭建编译环境使 ...
- 针对MySql封装的JDBC通用框架类(包含增删改查、JavaBean反射原理)
package com.DBUtils; import java.lang.reflect.Field; import java.sql.Connection; import java.sql.Dri ...
- CSU 2151 集训难度【多标记线段树】
http://acm.csu.edu.cn/csuoj/problemset/problem?pid=2151 Input 第一行三个数n,m,v0 表示有n名萌新和m次调整,初始时全部萌新的集训难度 ...
- 36、Flask实战第36天:客户端权限验证
编辑cms_base.html <li><a href="#">{{ g.cms_user.username }}<span>[超级管理员]&l ...
- python基础之函数对象,嵌套,名称空间和作用域
函数对象: 函数是第一类对象的含义是函数可以被当作数据处理 函数可用于: def func(): print(‘func’) 1.引用 f = func 把内存地址赋值给f 2.当作参数传给一个函 ...
- [转]ibatis中井号跟美元符号区别(#、$)
Mybatis中如何在SQL语句表名中使用参数 insert into prefix_${table_name} (a, b, c) values (#{a}, #{b}, #{c}) ${} 表示直 ...
- [转]Spring Security学习总结一
[总结-含源码]Spring Security学习总结一(补命名空间配置) Posted on 2008-08-20 10:25 tangtb 阅读(43111) 评论(27) 编辑 收藏 所属分 ...