flygrounder
@flygrounder
Python/Django

Можно ли сделать foreign key к разным моделям?

Допустим в django у меня есть абстрактная модель ArtObject, которая обозначает произведение искусства. У неё есть наследники Song, Picture, Writing, которые похожи, но отличаются. Я хочу добавить модель Review(обзор), которая подходила бы ко всем 3 моделям. Есть идея сделать 2 IntegerField: один отвечает за id того, к чему отзыв, другой за тип этого чего-то, но это выглядит как костыль, чем по сути и является. Так вот, как такое лучше всего реализовать?
  • Вопрос задан
  • 126 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Во-первых, вы можете сделать ForeignKey на сам ArtObject. Во-вторых, ваш велосипед уже придуман и называется GenericRelation.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы