解决:django设置DEBUG=false时出现的问题

这篇具有很好参考价值的文章主要介绍了解决:django设置DEBUG=false时出现的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先,我用的是django4.2,python3.10版本

本来,如果在settings.py中使用 DEBUG = True,那么什么问题也没有,当然,这属于调试模式。

DEBUG = True
TEMPLATE_DEBUG = DEBUG

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

解决:django设置DEBUG=false时出现的问题,django,python,后端

解决:django设置DEBUG=false时出现的问题,django,python,后端

一切正常.....

但是,当我准备提交代码时,将 DEBUG 改为 False 时.....

DEBUG = False
TEMPLATE_DEBUG = DEBUG

好好的admin界面,变成了这样....

解决:django设置DEBUG=false时出现的问题,django,python,后端

而且,好好的静态资源,也没法访问了:

解决:django设置DEBUG=false时出现的问题,django,python,后端

 郁闷啊.....

网上的帖子,关于这方面的也比较多....

我看的是这一篇:彻底解决:django设置DEBUG=false时导致静态文件丢失问题_云霄IT的博客-CSDN博客

 实践一下吧...

DEBUG = False
TEMPLATE_DEBUG = DEBUG

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

再urls.py中添加点东西:

from django.urls import path, include, re_path
from django.views import static
from django.conf import settings
from . import siteconfig as siteconfig


urlpatterns = [
    re_path(r'^js/(?P<path>.*)$', static.serve,
            {'document_root': siteconfig.JS_DIR}),
    re_path(r'^css/(?P<path>.*)$', static.serve,
            {'document_root': siteconfig.CSS_DIR}),
    re_path(r'^images/(?P<path>.*)$', static.serve,
            {'document_root': siteconfig.IMAGE_DIR}),
    re_path(r"^static/(?P<path>.*)$", static.serve,
            {"document_root": settings.STATIC_ROOT}, name='static'),
]

然后,就变成了这样....

解决:django设置DEBUG=false时出现的问题,django,python,后端

好吧....静态资源确实能访问了.....但是.....他喵的,admin界面都没了....就没了....就他喵的,没了....

好痛苦啊.....

这个时候,想着有没有一种可能,DEBUG = True 的时候,settings.py 那几项,不用注释掉,大家共存下,可好?

DEBUG = False
TEMPLATE_DEBUG = DEBUG

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

结果,好像,不太好....

解决:django设置DEBUG=false时出现的问题,django,python,后端

django不让搞共存啊....

最后,突然发现....错误只说 STATICFILES_DIRS 不准和 STATIC_ROOT 共存,没说 STATIC_URL 不让共存啊....

那这样呢....

DEBUG = False
TEMPLATE_DEBUG = DEBUG

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

于是乎....

解决:django设置DEBUG=false时出现的问题,django,python,后端

解决:django设置DEBUG=false时出现的问题,django,python,后端

啥都好了....哎....

好吧,特此记录吧....网上的帖子不是说就是错的....只是说,对于Django4.2.3,python3.10这个搭档来说,其实主要还是对 django4.2 这个曾新瓦亮的版本来说,是真的行不通啊.....千万别干掉 STATIC_URL 参数....有它在就是晴天啊.... 

关于,DEBUG=False,其实还有一个问题....

就是现在简单的admin正常了,那是因为,我的服务本身就是自定义了admin界面,所以,这样改以后没问题了,但是,django,会有许多三方包配有静态文件,这样以来....好吧...

调试模式的时候是这样的:

解决:django设置DEBUG=false时出现的问题,django,python,后端

DEBUG=False的时候,是这样的....

解决:django设置DEBUG=false时出现的问题,django,python,后端

郁闷的啊...rest_framework模块就成了这球样子了.....

然后就是一堆报错:

解决:django设置DEBUG=false时出现的问题,django,python,后端

所以 ,就是说,还需要将rest_framework模块里的static文件也得搞出来,放到我们给的static_root路径下才行....

手动copy Paste,迁过来可以....我就是这么干的....问题也被解决了...

但是,在网上找了找....我靠,django本身自带这种操作啊...一条命令就搞定了....

python3 manage.py collectstatic

django 会把所有的 static 文件都复制到 STATIC_ROOT 文件夹下....一劳永逸啊....文章来源地址https://www.toymoban.com/news/detail-642310.html

到了这里,关于解决:django设置DEBUG=false时出现的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决OBS同时录制电脑音频和人声时出现的声音不同步问题

    在obs同时录制电脑声音和人声时,比如在 唱歌 、 配音 时,录制的结果人声有明显的延迟,大约0.5-1秒左右的样子 麦克风 - 高级音频属性 调整麦克风的同步偏移,通常是人声有延迟,用负数表示提前多少毫秒,需要多次尝试确定真正的延迟时间 注: 这是目前唯一的一个人声

    2024年02月12日
    浏览(48)
  • 解决python-opencv:(-215:Assertion failed) _img.empty() in function ‘cv::imwrite‘在将视频分成帧图片,写入时出现的问题

    最近在搞视频检测问题,在用到将视频分帧保存为图片时,图片可以保存,但是会出现(-215:Assertion failed) !_img.empty() in function \\\'cv::imwrite\\\'问题而不能正常运行,在检查代码、检查路径等措施均无果后,了解了视频分帧的原理后,才解决了问题,就这一个问题,解决了两天才解决

    2024年02月15日
    浏览(48)
  • 解决安装nrm,执行nrm ls时出现的const open=require(‘open’)问题

     最开始安装的淘宝镜像源为 npm config set registry=https ://registry.npm.taobao.org/ ,后来看到镜像源变了,就换了下面的, 下载新的npm淘宝镜像资源包 npm config set registry http://registry.npmmirror.com 查看,安装成功:  安装nrm插件: npm install -g nrm ,将nrm安装为全局可用的工具。 然后运行

    2024年02月06日
    浏览(50)
  • 解决微信小程序recycle-view使用百分比单位控制宽高时出现的内容溢出问题

    recycle-view是微信小程序官方推出的一个经过优化的长列表组件,但是在使用百分比单位控制高宽时有个内容溢出问题,虽然它提供了height和width的参数可以设置宽高,但每次写列表都需要去js里获取宽高并设置是较为麻烦的,所以现在来着手解决使用百分比单位设置宽度时碰到

    2024年02月03日
    浏览(46)
  • 安装SCCM时出现的问题

    出现这个问题 根据提示信息逐一排除以下问题: 1、确保SQL服务器名称是否正确。 2、确保TCP1433和4022端口有没有被防火墙屏蔽。 3、站点服务器帐号加入SQLServer的sysadmin角色成员里。 4、确保SQL实例没有使用动态端口,可参考: Configure SQL Server to listen on a specific TCP port - SQL S

    2024年01月16日
    浏览(47)
  • 解决Python中使用xlwings模块时出现的“_pickle.UnpicklingError: invalid load key, ‘\x00‘“错误

    解决Python中使用xlwings模块时出现的\\\"_pickle.UnpicklingError: invalid load key, ‘x00’\\\"错误 在使用Python编程语言进行数据处理和分析时,xlwings是一个常用的模块,它可以实现Python与Microsoft Excel之间的双向交互。然而,有时候在使用xlwings模块时,可能会遇到\\\"_pickle.UnpicklingError: invalid

    2024年02月04日
    浏览(43)
  • 使用git时出现的一些问题整理

    目录 一、解决fatal: detected dubious ownership in repository at \\\'D:/resource/git项目\\\' 二、解决error: failed to push some refs to \\\'https://gitee.com/yantianzi/roadlink\\\'hint: Updates were rejected because the remote contains work that you do 报错 : 解决方法 :注意看红框提示 只需要再输入上面的命令即可,  ok,解决。

    2024年02月15日
    浏览(36)
  • 解决npm install 时出现的.git can‘t be found (see https://git.io/Jc3F9)问题

    问题: 今天使用webstream npm instatll 之后报错 .git can‘t be found (see https://git.io/Jc3F9) 原因 一般来说就是你使用ws打开的文件夹位置中不是 .git 文件夹的所在的文件夹相同的位置 举个例子就是: 你的 .git 文件在路径 /a/b 而你现在用ws打开的项目在 /a/b/c 中导致的, 解决方案, 建议不要

    2024年04月25日
    浏览(31)
  • 记录Dotween中Sequence频繁创建和关闭时出现的问题

    问题出现在Unity的Button点击事件中,对同一个Sequence引用,频繁使用OnPointerDown和OnPointerUp事件来控制其创建和Kill() 时,会因处理速度问题导致出现其中某次的Sequence没有被正确关闭: 首先全局声明一个 sequence 引用: 然后在两个连续快速触发的函数中分别创建,Kill该sequence:

    2024年02月11日
    浏览(43)
  • Navicat连接MySQL时出现的连接失败--解决方法

    一、安装MySQL的注意事项 官网下载安装,选择zip包,解压后不用安装 只用配置好环境变量Path 并在解压后的文件夹里新建文本文档my.ini,编辑如下内容 需要修改的地方是安装目录(自己的)和数据存放目录(自己的) 详细安装过程可以借鉴这个文章 mysql8.0.25安装配置教程(

    2024年02月04日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包