You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django分离生产与开发配置:原settings.py是否删除等问题咨询

Django配置分离相关问题解答

问题1:分离完成后是否需要删除原settings.py文件?

  • 不需要急着删除,建议先保留一段时间作为备份。等确认新的配置文件(base.py、dev.py、prod.py等)完全正常运行后,再考虑删除原文件;如果后续遇到配置问题,原文件也能作为参考对照。

问题2:该方法是否为配置分离的通用做法?

  • 这种拆分base公共配置+环境专属配置的方式是非常通用且推荐的做法,Django官方也认可这种模式。它把公共配置放在base.py,开发/生产等不同环境的专属配置分别放在对应文件,通过导入base.py来复用公共配置,结构清晰、易于维护,适合大多数项目。
  • 帖子里的其他方法(比如用环境变量切换、单文件分支判断)也各有适用场景,但base拆分法是行业内的主流方案之一。

问题3:BASE_DIR修改是否正确?

  • 这个修改是正确的,两种写法作用完全一致,只是实现方式不同:
    • 原写法BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))是传统的os模块路径写法,对应两级父目录;
    • 新写法BASE_DIR = Path(__file__).resolve().parent.parent.parent是pathlib风格写法,因为原settings.py移到了子目录(比如settings/base.py),需要多往上跳一级目录,所以三级.parent正好匹配原逻辑。
  • Django 2.1.7完全兼容pathlib写法,只要你在base.py顶部导入from pathlib import Path即可正常使用。

内容的提问来源于stack exchange,提问作者ckp7blessed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 16:01:11