解决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中捕获键盘的方式详解
Mar 28 Python
Python之pymysql的使用小结
Jul 01 Python
使用 Python 处理 JSON 格式的数据
Jul 22 Python
Django REST framework 如何实现内置访问频率控制
Jul 23 Python
pandas实现DataFrame显示最大行列,不省略显示实例
Dec 26 Python
关于初始种子自动选取的区域生长实例(python+opencv)
Jan 16 Python
Python sklearn库实现PCA教程(以鸢尾花分类为例)
Feb 24 Python
python 穷举指定长度的密码例子
Apr 02 Python
Python垃圾回收机制三种实现方法
Apr 27 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
Sep 21 Python
python 常见的反爬虫策略
Sep 27 Python
Python利器openpyxl之操作excel表格
Apr 17 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写的基于Memcache的Queue实现代码
2011/11/27 PHP
input file获得文件根目录简单实现
2013/04/26 PHP
CI(CodeIgniter)框架中的增删改查操作
2014/06/10 PHP
php array_values 返回数组的值实例详解
2016/11/17 PHP
PHP合并数组函数array_merge用法分析
2017/02/17 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
JXTree对象,读取外部xml文件数据,生成树的函数
2007/04/02 Javascript
intro.js 页面引导简单用法 分享
2013/08/06 Javascript
js页面跳转的常用方法整理
2013/10/18 Javascript
Node.js中使用事件发射器模式实现事件绑定详解
2014/08/15 Javascript
JavaScript实现把数字转换成中文
2015/06/29 Javascript
基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式
2015/10/28 Javascript
理解 JavaScript Scoping &amp; Hoisting(二)
2015/11/18 Javascript
WebSocket实现简单客服聊天系统
2017/05/12 Javascript
vue使用mint-ui实现下拉刷新和无限滚动的示例代码
2017/11/06 Javascript
浅谈JavaScript面向对象--继承
2019/03/20 Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
2019/03/29 Javascript
浅析vue-router中params和query的区别
2019/12/24 Javascript
Javascript实现关闭广告效果
2021/01/29 Javascript
[48:44]2014 DOTA2国际邀请赛中国区预选赛5.21 TongFu VS HGT
2014/05/22 DOTA
[03:42]2018完美盛典-《加冕》
2018/12/16 DOTA
python网络编程学习笔记(八):XML生成与解析(DOM、ElementTree)
2014/06/09 Python
python监控网站运行异常并发送邮件的方法
2015/03/13 Python
Python使用迭代器捕获Generator返回值的方法
2017/04/05 Python
python 3.7.0 下pillow安装方法
2018/08/27 Python
Django框架封装外部函数示例
2019/05/28 Python
python实现简易版学生成绩管理系统
2020/06/22 Python
python如何快速生成时间戳
2020/07/21 Python
如何利用Python 进行边缘检测
2020/10/14 Python
城市规划毕业生求职信
2013/10/10 职场文书
董事长助理岗位职责
2014/02/18 职场文书
安全生产实施方案
2014/02/23 职场文书
2014领导班子四风问题查摆思想汇报
2014/09/13 职场文书
2014年个人教学工作总结
2014/12/09 职场文书
复兴之路纪录片观后感
2015/06/02 职场文书