我有这两个模型
class Event(models.Model):
event_name=models.CharField("Event Name",max_length=255)
category = models.ManyToManyField(SubCategory)
def __unicode__(self):
return self.event_name
class Category(models.Model):
category_name= models.CharField(max_length=255)
def __unicode__(self):
return self.category_name
class SubCategory(models.Model):
parent_category=models.ForeignKey(Category)
category_name=models.CharField(max_length=255)
def __unicode__(self):
return self.category_name
在我的 form.py
class EventForm(forms.ModelForm):
class Meta:
model=Event
def __init__(self, *args, **kwargs):
super(EventForm, self).__init__(*args, **kwargs)
self.fields["category"].widget = CheckboxSelectMultiple()
self.fields["category"].queryset = SubCategory.objects.all()
我创建了我的模型的一种形式,EventForm
并且子类别显示为复选框,就像我想要的那样。唯一的问题是,我想根据各自的父类别列出子类别复选框,但不知道该怎么做。任何人都可以帮助我如何做到这一点