如何以这种方式配置 django 模型,即一个模型只会迁移到一个特定的数据库?

时间:2021-01-02 05:26:59

标签: django django-models django-orm django-migrations

假设我在模型的“params”类中定义了一个参数“db_select”,并且我希望来自该模型的所有迁移都自动路由到提到的数据库。同样,对于具有其他 db_select 选项的其他模型,将自动路由到它们各自的数据库。我应该如何编写我的 routers.py 脚本?我正在使用 django 3.1.4

我的 Models.py:

from django.db import models

# Create your models here.
class Project(models.Model):
    startDate=models.DateField()
    endDate=models.DateField(max_length=20)
    name=models.CharField(max_length=20)
    assignedTo=models.CharField(max_length=30)
    priority=models.IntegerField()
    class params:
       db_select = 'default'

我的数据库设置:

DATABASE_ROUTERS=('movieForm.dbrouters.myRouter',)
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'projectInfo',
        'USER': 'root',
        'PASSWORD': '123@abc',

    },
    'movie': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'movieDB',
        'USER': 'root',
        'PASSWORD': '123@abc',

    }
}

0 个答案:

没有答案
相关问题