关于Django 中启动自带服务器进入后台admin没有样式的问题...

来源:互联网 发布:域名 daddy 编辑:程序博客网 时间:2024/05/17 21:40

凌晨1点被这个问题搞到差点通宵,这个问题直接去百度,可以发现有很多关于这个问题的解决方法,但是不是我遇到的关键问题,不过这里也顺带总结一下这些方法:

主要问题:在项目manage.py所在目录用命令行输入


我这里的端口选了9999,开启Django的自带的服务器,项目的静态文件没更改过,进入Django自带的后台管理admin时出现css样式不显示的情况


一度以为是python2.7版本的问题,编码字符不是utf-8,而python3版本都是utf-8编码格式,尝试在settings.py添加一下代码

import sys reload(sys) sys.setdefaultencoding('gbk')

 

发现无效,接着在python的安装路径,我的是默认路径C:\Python27\Lib,找到site.py文件第470行将encoding里面的值改为gbk:

encoding = "gbk" # Default value set by _PyUnicode_Init()

 

还是不行,接着在同目录下找到mimetypes.py文件,在末尾添加代码:

reload(sys)sys.setdefaultencoding('gbk')

也不行。(还有一种改static指向的方法,在项目里面新建目录static然后在settings.py添加STATIC_ROOT=' /myblog/static' 参数填static的路径,然后命令行执行python manage.py collectstatic会把需要的静态文件复制到static文件下,可惜也是没用。。。)

 

一度想直接下载python3版本,后来在浏览器的开发者工具里面看到,css的样式文件的状态码是200,代表是接收到了

问题出在了css文件解析的问题了,因为mimetypes.py在启动时会调用注册表,所以又在注册表\HKEY_CLASSES_ROOT\.css里面把Content Type的application/x-css改为text/css


也是什么用都没有,后来想到版本解析的问题,所以我干脆将C:\Python27\Lib\site-packages\django\contrib\admin\templates\admin登陆界面的版本解析删掉,对的就是html5的声明<!DOCTYPEhtml>,结果如下:



暴力解决法...怪异模式...



阅读全文
0 0
原创粉丝点击