У меня есть 2 модели, упрощенные для этого вопроса. В модели Article
как я могу ограничить choices=
поля Article.status
на основе записей в модели Category
, которые имеют конкретное значение Category.type
?
class Article(models.Model):
name = models.CharField(max_length=100)
# Set choices= only to values of Category which have a type of 'foo'
status = models.ForeignKey(Category)
class Category(models.Model):
name = models.CharField(max_length=10)
type = models.CharField(max_length=10)
Для прозрачности, я знаю, что делал это раньше, но я не могу вспомнить, как или найти проект, где я это сделал. Как будто решение только что исчезло на мне ... * пуф *. Магия.
РЕДАКТИРОВАТЬ: изменено на models.ForeignKey
.