GenericForeignKey нужен, когда одна сущность ссылается на объекты разных моделей через пару content_type и object_id. Объясните конкретную потребность и цену такой гибкости.
Почему вы использовали GenericForeignKey?
GenericForeignKey нужен, когда одна сущность ссылается на объекты разных моделей через пару content_type и object_id. Объясните конкретную потребность и цену такой гибкости.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
GenericForeignKey нужен, когда одна сущность ссылается на объекты разных моделей через пару content_type и object_id. Объясните конкретную потребность и цену такой гибкости.
Типичный случай — универсальное вложение, комментарий или запись активности. Это пример, а не факт вашего проекта. В отличие от обычного ForeignKey, база не может проверить единой внешней ссылкой существование произвольного целевого объекта; сложнее запросы, индексация и работа с удалениями. Обычно нужен индекс по паре полей и явная стратегия целостности. Если допустимых типов мало и связи стабильны, отдельные ForeignKey или таблицы связей могут быть проще. Выбор оправдывают требованиями, а не удобством избежать проектирования схемы.