Как определить внешний ключ в модели приложения Django, который игнорируется, если не установлено дополнительное приложение - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть базовое приложение, которое используется под-приложениями. У меня есть AbstractUser, определенный в базовом приложении, и мне нужно добавить отношение к модели вспомогательного приложения, если оно установлено. Я понимаю, что мое новое поле будет присутствовать в пользовательской таблице базы данных, но с нулевым значением, если в подпапе установлена ​​заметка. Моя проблема заключается в том, чтобы ссылаться на внешний ключ, который у меня был, на модель, которая не существует, если не установлены дополнительные приложения. Нужно ли переносить модель из подпрограмм в базовое приложение или есть другое решение, например, ограничение условного внешнего ключа в моей модели AbstractUser.

1 Ответ

0 голосов
/ 19 февраля 2020

Я думаю, что вам нужно подпрограмма-заглушка, чтобы закрыть дыру, если она "не установлена". Все, что он делает, это объявляет модель так, чтобы в базе данных была таблица (но нет записей). Позже вы можете заменить его на реальное суб-приложение и заполнить таблицу через него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...