对于使用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样式恢复原样~!