gpt4 book ai didi

python - django manage.py 设置默认

转载 作者:太空狗 更新时间:2023-10-29 17:27:55 24 4
gpt4 key购买 nike

我有一个 settings.py 文件和一个 dev_settings.py 文件,我用它们来覆盖一些开发目的的值。每次运行 ./manage.py 命令时,我都必须指定 --settings=whatever.local_settings。这每次都变得非常乏味,我试图找到一种方法来强制 manage.py 默认加载我的 dev_settings.py 文件,这样我就不必每次都输入那么长的参数我想运行命令。

我已经尝试设置 DJANGO_SETTINGS_MODULE,但是,manage.py 似乎覆盖了这个选项。

是否有可能实现这一点,还是我注定要始终指定该参数?

最佳答案

manage.py 为您设置设置路径,这就是它忽略 DJANGO_SETTINGS_MODULE 的原因(它基本上只是环绕 django-admin.py ).

有两种简单的方法可以解决您的问题:

  1. 设置 DJANGO_SETTINGS_MODULE 并使用 django-admin.py 代替 manage.py 运行所有命令。如果使用 vitualenv 会更好.

  2. 复制 manage.py 并将其命名为 local.py(这是我的名称)并重命名所有提及的 settingsdev_settings

例如:

#!/usr/bin/env python
from django.core.management import execute_manager
import imp

try:
import settings_local
except ImportError:
import sys
sys.stderr.write("Error: Can't find the file 'settings_local.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n" % __file__)
sys.exit(1)

if __name__ == "__main__":
execute_manager(settings_local)

您现在可以通过./local.py 运行所有命令。

关于python - django manage.py 设置默认,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8318688/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com