gpt4 book ai didi

如果找不到自定义数据库,django 默认为 db.sqlite3

转载 作者:行者123 更新时间:2023-12-01 12:40:38 24 4
gpt4 key购买 nike

假设我有一个真正的 rad 数据库,我正在与 Django 一起使用,但出于调试目的,如果找不到我的 rad 数据库或没有用户,我想在 setting.py 中使用默认的“db.sqlite3”数据库能够轻松设置数据库。

如何使用 Django 完成此任务?

最佳答案

我这样做的方式是这样的:

在 settings.py 中:

import dj_database_url # you'll need this in requirements.txt

DATABASES = {
"default": dj_database_url.config(default='sqlite:///db.sqlite3'),
}

如果设置了 DATABASE_URL 环境变量,因为它将在生产环境中使用(对我来说是 Heroku,但你可以在任何地方使用 DATABASE_URL 环境变量)然后使用它。否则,退回到 sqlite

此外,在 settings.py 的末尾我有:

# Import optional local settings.  This must be at the END of this file.
try:
from .local import *
except ImportError:
pass

这样你可以通过两种方式覆盖 sqlite 数据库:你可以设置 DATABASE_URL 环境变量,或者你可以创建一个“local.py”文件(通过 .gitignore 从版本控制中排除它)来覆盖它和其他设置选择性地。为什么有两种方式?主要是因为我团队中的大多数开发人员更愿意管理本地设置文件而不是环境变量。

我将这种理念用于我的所有设置,这些设置在开发和生产之间可能会有所不同,或者包含我出于任何其他原因不希望在源代码管理中的内容。

关于如果找不到自定义数据库,django 默认为 db.sqlite3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25150691/

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