2016-09-13 192 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你不能實現,除非它在第一個字段中選擇後重新加載頁面。

相關問題