对于使用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的样式文件:

> collectstatic
此时Django的后台管理系统xadmin样式恢复原样~!
本文介绍在Django框架中,当设置DEBUG为False时,xadmin后台管理系统可能出现样式丢失的问题。通过调整settings.py配置,修改urls.py并运行collectstatic命令,可以恢复xadmin的样式。
3748





