Здравствуйте. У меня есть 2 таблицы. Хочу разнести их по разным базам. Одна в дефолтной, другая - в новой.
Файл settings:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
},
'registrations': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': '../db.sqlite3'
}
}
DATABASE_ROUTERS = ['nails.router.RegRouter']
Файл router, лежит в одной папке с settings:
class RegRouter:
def db_for_read(self, model, **hints):
if model._meta.db_table == 'registrations':
return 'registrations'
return None
def db_for_write(self, model, **hints):
if model._meta.db_table == 'registrations':
return 'registrations'
return None
Мои модели:
class Service(models.Model):
title = models.CharField('Название услуги', max_length=100, name="title")
cost = models.DecimalField('Стоимость', name="cost", max_digits=6, decimal_places=2)
duration = models.IntegerField('Длительность в минутах', name="duration")
image = models.ImageField('Изображение карточки', upload_to="main/static/main/img")
def __str__(self):
return self.title
class Registration(models.Model):
title = models.CharField('Тест', max_length=100, name="title", default='')
def __str__(self):
return self.title
class Meta:
db_table = 'registrations_table'
Почему когда я выполняю миграцию все таблицы записываются в обе базы данных?
(очевидно, миграцию второй я провожу как python manage.py migrate --database=registrations)
Как мне избежать этого? Чего я в роутере неправильно сделал?