【发布时间】:2017-07-02 07:47:36
【问题描述】:
我的 Django 项目有两个数据库。我创建了将数据输入数据库(mysql)的函数,但数据总是保存在默认数据库中。我现在使用 .save(using='db2') 解决了这个问题。当前的问题是我已经使用实例来获取用户的 id,当我想使用下面的函数查看用户详细信息时,默认数据库的用户 id 与 mysql 数据库的用户 id 冲突所以默认数据库详细显示。我怎样才能像我用来保存数据的那样只使用 db2。显示用户详细信息的功能如下所示。
DATABASES = {
'default':{
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3')},
'db2': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'subscribers',
'USER': 'root',
'PASSWORD': '######',
'HOST': 'localhost',
'PORT': '3306',
}}
我在我的 Django 应用程序中创建的函数,在请求时显示用户的详细信息。
@login_required
def userDetail(request, id=None):
instance = get_object_or_404(Subscribers, id=id)
context = {
"Name": instance.name,
"instance": instance,
}
return render(request, 'userDetail.html', context)
【问题讨论】:
标签: python mysql django database