Две версии одного и того же приложения Django: 1 для администрирования, 1 только для запросов
У меня есть два приложения Django, которые совместно используют базу данных, а также ряд моделей. Приложение 1 используется для администрирования данных через страницу администратора. Приложение 2 используется только для запроса данных и представления данных. Приложения запущены на разных серверах.
Мое текущее решение состоит в том, чтобы запустить точно такой же код в models.py на обоих приложениях. Однако я не запускал makemigration/migrate на app2. Это решение работает, но меня беспокоит тот факт, что у меня один и тот же код в двух models.py, но только одна рабочая таблица в базе данных.
Как правильно поступить в данной ситуации?
Я думаю, что это то, что вы ищете: https://docs.djangoproject.com/en/4.1/ref/models/options/#managed
В приложении 2 вы добавите managed=False
к вашим различным моделям, доступным только для чтения.
Что-то вроде:
class MyModel(models.Model):
class Meta:
managed = False
# db_table = 'the_table_name' add this if necessary only