django에서 인라인 형식이 아닌 formset 수준에서 ChoiceField를 사용할 수 있습니까? 예를 들어 전화기에 대한 formset이 있고 각각의 인라인 양식이 단일 Phone
모델을 나타내는 경우, 어떻게 모든 인라인 양식에 걸쳐있는 ChoiceField를 가질 수 있습니까?Django - ChoiceField 여러 양식에 걸쳐
내 모델 : 나는 기본 전화 선택하고있어 어디 이런 식으로 뭔가
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
을 제거하고 기본 또는 아니라면 나타 내기 위해 Phone
에 BooleanField을 사용할 수 있습니다, 그러나 이것이 내 문제를 해결할 수 있을지 확실하지 않습니다.
나는 가능한 한 덜 해킹 된 더 장고 같은 접근법을 찾고 있습니다.
나는이 접근법을 이전에 사용하라고 들었지만, 여전히 그 중 하나의 측면을 얻지는 못한다. 왜 라디오 버튼 대신 자바 스크립트로 체크 박스를 사용하고 싶습니까? 나는 동일한 수동 작업을 할 수 있지만 라디오 버튼과 자바 스크립트를 사용할 수 없다는 뜻입니다. 체크 박스를 선호하는 특별한 이유가 있습니까? – abstractpaper
글쎄, 부울 필드는 기본적으로 체크 박스를 생성 할 것이고, 장고가 여러 모델에 걸쳐있는 라디오 버튼 그룹을 생성하는 방법을 생각할 수는 없습니다. 장고는 각각의 이름 앞에 접두사를 붙일 것이기 때문에 가능한 일은 거의 없을 것 같아요. Peronally 나는 체크 박스를 사용하고 자바 스크립트를 사용하여 라디오 버튼과 같은 역할을하는 데 아무런 문제가 없습니다. – John