美文网首页
Django关闭debug模式,xadmin样式丢失

Django关闭debug模式,xadmin样式丢失

作者: 夜雨_87aa | 来源:发表于2020-06-08 22:45 被阅读0次

    Django关闭debug模式,xadmin样式丢失,如下所示:(瞬间感觉回到解放前了,郁闷啊)


    image.png

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

    问题定位:
    打开前端页面,按下F12,点击Network,然后F5刷新下,检查未加载成功的静态文件请求地址,如下所示

    image.png
    发现请求地址为:http://127.0.0.1:1101/static/xadmin/vendor/bootstrap/css/bootstrap.css,检查自己的static静态文件存储目录,没有xadmin/vendor/bootstrap/css/bootstrap.css文件,所以现在很好理解了,找不到静态文件自然无法成功加载样式了。

    解决办法:
    1、修改setting.py文件

    STATIC_URL = '/static/'
    STATIC_ROOT = 'static'
    STATICFILES_DIRS=[
        os.path.join(BASE_DIR,'/static/')
    ]
    

    2、修改urls.py文件

    urlpatterns = [
     path('xadmin/', xadmin.site.urls),
     //...
    需要添加的
    url(r'^static/(?P<path>.*)$', static.serve,{'document_root': settings.STATIC_ROOT}, name='static'),
    ]
    

    3、将xadmin插件中static目录下面的xadmin文件夹复制到根目录static后,重启服务器,xadmin样式恢复成功


    image.png image.png
    image.png

    相关文章

      网友评论

          本文标题:Django关闭debug模式,xadmin样式丢失

          本文链接:https://www.haomeiwen.com/subject/gfodtktx.html