【发布时间】:2018-01-09 11:31:04
【问题描述】:
我只是试图找到一个在 Django 中明智地定义数据库模型的解决方案。 就像在我的 settings.py 中一样,有三个数据库
settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
},
'db_one': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db_one.sqlite3'),
},
'db_two': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db_two.sqlite3'),
},
}
在我的 polls/models.py 中
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.question_text
def was_published_recently(self):
return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
@python_2_unicode_compatible
class Choice(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
def __str__(self):
return self.choice_text
现在我想在 db_one 数据库中添加问题模型,在 db_two 数据库中添加选择模型,我该怎么做
我尝试使用路由器遵循此multiple databases and multiple models in django 但只有在我尝试将空白设置放入默认数据库并尝试迁移之后它才更喜欢默认数据库,但它给了我一个错误
或
这是在 Django 中为应用程序定义数据库的方式
【问题讨论】:
标签: python django database django-models