解决Django部署设置Debug=False时xadmin后台管理系统样式丢失


Posted in Python onApril 07, 2020

对于使用Django框架开发的系统,当部署时设置settings.py文件中Debug=False时xadmin后台管理系统样式会丢失。

【问题原因】:

django的生产环境不同开发环境,在生产环境下(DEBUG=False),django.contrib.staticfiles 是不起任何作用的,也就说 django.contrib.staticfiles 只对开发环境(DEBUG=True)开启。所以会导致xadmin样式丢失现象。

【解决方案】:

①在settings.py中添加如下配置

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

②修改主项目中的urls.py文件

urlpatterns = [
 path('xadmin/', xadmin.site.urls),
 //...
 re_path('static/(?P<path>.*)', serve, {'document_root':STATIC_ROOT}),
]

③在控制台执行如下命令,它会在根目录下生成static文件,里边存储的是xadmin的样式文件:

解决Django部署设置Debug=False时xadmin后台管理系统样式丢失

> collectstatic

此时Django的后台管理系统xadmin样式恢复原样~!

补充知识:django接入xadmin无法加载样式问题

xadmin装完,竟然没有样式,查看了网上发现以下几种解决办法:

1.官网:替换xadmin下的theme.py文件,失败。

2.修改settings.py,添加 STATIC_ROOT,失败。

STATIC_URL = '/static/'
#如果你设置相同,等运行collectstatic时会警告.
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

这两种对我都无效,我自己找到这种方法:

修改settings.py文件,debug改为true,成功解决。

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

以上这篇解决Django部署设置Debug=False时xadmin后台管理系统样式丢失就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python简单日志处理类分享
Feb 14 Python
python去掉行尾的换行符方法
Jan 04 Python
Python简单实现查找一个字符串中最长不重复子串的方法
Mar 26 Python
python实现飞机大战微信小游戏
Mar 21 Python
python3 打开外部程序及关闭的示例
Nov 06 Python
python实现整数的二进制循环移位
Mar 08 Python
python进程和线程用法知识点总结
May 28 Python
PyQt5固定窗口大小的方法
Jun 18 Python
Flask框架 CSRF 保护实现方法详解
Oct 30 Python
使用 Python 处理3万多条数据只要几秒钟
Jan 19 Python
Django models文件模型变更错误解决
May 11 Python
浅谈keras 的抽象后端(from keras import backend as K)
Jun 16 Python
解决Python中报错TypeError: must be str, not bytes问题
Apr 07 #Python
Pycharm及python安装详细步骤及PyCharm配置整理(推荐)
Jul 31 #Python
django 实现简单的插入视频
Apr 07 #Python
django实现后台显示媒体文件
Apr 07 #Python
Python搭建Keras CNN模型破解网站验证码的实现
Apr 07 #Python
Python3之外部文件调用Django程序操作model等文件实现方式
Apr 07 #Python
解决django的template中如果无法引用MEDIA_URL问题
Apr 07 #Python
You might like
php max_execution_time执行时间问题
2011/07/17 PHP
php函数array_merge用法一例(合并同类数组)
2013/02/03 PHP
PHP开发中常用的十个代码样例
2016/02/02 PHP
PHP的全局错误处理详解
2016/04/25 PHP
PHP实现的折半查找算法示例
2017/12/19 PHP
Alliance vs Liquid BO3 第一场2.13
2021/03/10 DOTA
Prototype Date对象 学习
2009/07/12 Javascript
javascript innerText和innerHtml应用
2010/01/28 Javascript
分享一个asp.net pager分页控件
2012/01/04 Javascript
jquery表格内容筛选实现思路及代码
2013/04/16 Javascript
JS 毫秒转时间示例代码
2013/09/22 Javascript
document.getElementById获取控件对象为空的解决方法
2013/11/20 Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
2015/05/25 Javascript
javascript实现简单的全选和反选功能
2016/01/05 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
vue + webpack如何绕过QQ音乐接口对host的验证详解
2018/07/01 Javascript
vuejs router history 配置到iis的方法
2018/09/20 Javascript
JavaScrip数组去重操作实例小结
2019/06/20 Javascript
Vue Router 实现动态路由和常见问题及解决方法
2020/03/06 Javascript
javascript递归函数定义和用法示例分析
2020/07/22 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
2020/08/07 Javascript
[01:24:16]2018DOTA2亚洲邀请赛 4.6 全明星赛
2018/04/10 DOTA
分析Python读取文件时的路径问题
2018/02/11 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
2019/08/17 Python
html5中valid、invalid、required的定义
2014/02/21 HTML / CSS
Html5与App的通讯方式详解
2019/10/24 HTML / CSS
奥地利汽车配件店:Pkwteile.at
2017/03/10 全球购物
什么是属性访问器
2015/10/26 面试题
小学生感恩演讲稿
2014/04/25 职场文书
中学生思想品德评语
2014/12/31 职场文书
辞职信格式模板
2015/02/27 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
公司催款律师函
2015/05/27 职场文书
永远是春天观后感
2015/06/12 职场文书
幼儿园托班开学寄语(2016春季)
2015/12/03 职场文书
学习nginx基础知识
2021/09/04 Servers