7 django django-models django-2.2
请看下面的代码:
user.save(using=self._db)
Django 的 self._db 的默认值是多少?这个值是否默认为我在 settings.py 中为数据库默认指定的值?
我在 Stack Overflow 上发现了一些问题,说这个值将为 Django 提供一个数据库类型,但如果我从未明确设置它,默认情况下它是什么?
sha*_*fik 23
Django 默认管理器使用using参数来定义管理器应该使用哪个数据库进行操作。这将可选地使用。如果您有多个数据库,您可以通过这些数据库定义操作所需的数据库。
一个例子user.save(using=self._db)通常被定义为从数据库配置的“默认” settings.py。欲了解更多信息,请单击此处
幕后self._db设定为None。如果user.save(using=None),那么它将使用default database.
例如,您的数据库配置就像
DATABASES = {
'default': {
'NAME': 'app_data',
'ENGINE': 'django.db.backends.postgresql',
'USER': 'postgres_user',
'PASSWORD': '****'
},
'new_users': {
'NAME': 'user_data',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': '****'
}
}
Run Code Online (Sandbox Code Playgroud)
然后如果你想使用默认数据库然后使用user.save(using=self._db)
如果你想使用new_users数据库然后使用user.save(using="new_users")
| 归档时间: |
|
| 查看次数: |
2336 次 |
| 最近记录: |