Я переношу django-проект на сервер.
Так получилось что у меня очень много моделей. И чтобы обойти ограничение 1600 columns от PostgreSQL, разбил свои модели на 3 приложения/файла модели. Т.е. у меня есть приложения main, translations и translations2. В каждом из них работает библиотека
django-modeltranslation. Я создал 3 базы db, db_translations и db_translations2.
Внес их в settings:
INSTALLED_APPS = [
...
'main',
'translations',
'translations2',
...
]
и
DATABASES = {
'default': {
...
'NAME': 'db',
..
},
'trans': {
...
'NAME': 'db_translations',
...
},
'trans2': {
...
'NAME': 'db_translations2',
...
}
}
Провел миграции как:
python3 manage.py makemigrations main
python3 manage.py migrate main
python3 manage.py makemigrations translations
python3 manage.py migrate translations --database=trans
python3 manage.py makemigrations translations2
python3 manage.py migrate translations2 --database=trans2
Выполняю команды update_translation_fields или sync_translation_fields из приложения
modeltranslations. По сути одна из команд
должна добавлять поля перевода для моих языков, формата field, field_ru, field_en, field_fr.
Но выдается ошибка:
django.db.utils.ProgrammingError: relation "translations_translations" does not exist
LINE 1: UPDATE "translations_translations" SET "open_ad_ru" = "trans...
Пока не нашел решения данной проблемы. При вызове runserver, выдает, что действительно не проведены миграции translations, translations2. (хотя я их явно записал в базы иначе была бы вызвана ошибка ограничения)
Подскажите пожалуйста, может что в settings дописать? Уже устал тестировать команды с форумов)))