我需要它,以便用户能够创建额外的角色,如果它不在TYPES_CHOICES元组内。我有它,如果角色不可用,他们可以选择'其他',然后创建一个额外的角色。
我希望它能让他们只从元组中选择一个xor来创建一个额外的角色并选择该角色。我会在models.py中进行验证检查吗?或者当我创建表单时? p>
class ExtraRole(models.Model):
name = models.CharField(max_length = 20)
def __unicode__(self):
return self.name
class Role(models.Model):
TYPES_CHOICES = (
('PLAYER', 'Player'),
('CONDUCTOR', 'Conductor'),
('COMMITTEEMEMBER', 'Committee Member'),
('LIBRARIAN', 'Librarian'),
('TUTOR', 'Tutor'),
('ACCOUNTANT', 'Accountant'),
('PRESIDENT', 'President'),
('CHAIRMAN', 'Chairman'),
('SECRETARY', 'Secretary'),
('OTHER', 'Other')
)
type = models.CharField(_('Type'), max_length = 20, choices = TYPES_CHOICES)
extra_roles = models.ForeignKey(ExtraRole)
def __unicode__(self):
return self.type