Возможно ли в django иметь ChoiceField на уровне набора форм, а не встроенную форму?Так, например, если у меня есть набор форм для телефонов, и каждая встроенная форма представляет отдельную модель Phone
, как я могу иметь ChoiceField, который охватывает все встроенные формы?Примерно так, где я выбираю основной телефон:
![Complex ChoiceField](https://i.stack.imgur.com/bD4is.png)
Мои модели:
class Profile(models.Model):
verified = models.BooleanField(default=False)
primary_phone = models.OneToOneField('Phone', related_name='is_primary', null=True, blank=True)
class Phone(models.Model):
profile = models.ForeignKey(Profile, editable=False)
type = models.CharField(choices=PHONE_TYPES, max_length=16)
number = models.CharField(max_length=32)
@property
def is_primary(self):
return profile.primary_phone == self
Я всегда могу удалить primary_phone
и использовать BooleanFieldв Phone
, чтобы указать, является ли это первичным или нет, но я не уверен, поможет ли это моей проблеме.
Я также ищу менее хакерский подход, более похожий на django, если это возможно.