我正在創建一個醫生目錄,並且想爲它們中的每一個添加專業化和子專業化。問題是牙醫的亞專業化不同於其他專業化。因此,當我從管理面板添加牙醫時,我想看到不同的子專業化列表,與添加任何其他專業化相比。我不知道如何去做。到目前爲止,我有一個專門化和次專業化的單獨模型。當我嘗試添加專業化時,它會爲所有內容打開相同的專業化下拉菜單。Django中的條件類別
models.py
class Specialization(models.Model):
name = models.CharField(max_length=30)
info = models.TextField(max_length=1600, blank = True, null = True)
def __unicode__(self):
return self.name
class Meta:
ordering = ('name',)
class Sub_Specialization(models.Model):
name = models.CharField(max_length=30)
info = models.TextField(max_length=1600, blank = True, null = True)
def __unicode__(self):
return self.name
class Meta:
ordering = ('name',)
class Doctor(models.Model):
name = models.CharField(max_length=1300)
specialization = models.ForeignKey(Specialization)
sub_specialization = models.ForeignKey(Sub_Specialization,null = True, blank = True)
def __unicode__(self):
return u"%s %s" % (self.name, self.specialization)
def get_absolute_url(self):
from django.core.urlresolvers import reverse
return reverse('m1.views.showDocProfile', args=[str(self.id)])
class Meta:
ordering = ('name',)