2016-09-13 80 views
0
# models.py 
class UserSportKinds(AbstractSports): 
    KINDS_OF_SPORTS = (
     (1, _('football')), 
     (2, _('volleyball')), 
     (3, _('hockey')), 
    ) 

    MASTERY_CHOICES = (
     (1, _('newby')), 
     (2, _('amateur')), 
     (3, _('semi-pro')), 
     (4, _('pro')) 
    ) 

    user = models.ForeignKey(UserProfile, on_delete=models.CASCADE) 
    kind_of_sport = models.IntegerField(_('kind of sport'), null=True, blank=True, choices=KINDS_OF_SPORTS) 
    mastery = models.IntegerField(_('mastery'), null=True, blank=True, choices=MASTERY_CHOICES) 

此代码允许有mastery没有kind_of_sport,所以通过通过其个人资料管理页面和用户管理员可以选择任何mastery没有相应的运动。是否有可能阻止mastery字段的模板,直到kind_of_sport被选中使用Django的内置功能或任何django电池,所以没有外部\自定义javascripts?如何在选择第一个字段中的选择之前阻止第二个字段的选择?

+0

你想在前端控制用户体验而不使用JavaScript?这怎么可能? – karthikr

+0

@karthikr Django使用一些js内部,所以为了避免手工工作,可能有一个我需要的内置功能。 – TitanFighter

回答

0

您可以使用javascript检测第一个字段上的更改,而不是启用第二个字段。

与django你不能实现,除非它在第一个字段中选择后重新加载页面。

相关问题