ограничить выбор в раскрывающемся списке подкатегории на основе связанной категории в админке Django

У меня есть три модели как

class Category(models.Model):
       name = models.CharField(max_length=128)

class SubCategory(models.Model):
    category = models.ForeignKey(Category)
    name = models.CharField(max_length = 400)

class Document(models.Model):
    category = models.ForeignKey(Category, null=True,blank=True,help_text=_('Required'))
    subcategory = models.ForeignKey(SubCategory, null=True, blank=True, help_text =_('Required'))
    title = models.CharField(max_length=300)

Теперь в интерфейсе администратора у меня есть категория, подкатегория и поле заголовка. Если пользователь пытается выбрать какую-либо подкатегорию, то должен отображаться только тот элемент подкатегории, который относится к категории. Простой пример - страна, раскрывающийся список состояний. Я пытаюсь получить его от Modelform, как

class DocumentAdminModelForm(ModelForm):

   def __init__(self, *args, **kwargs):    
       super(DocumentAdminModelForm, self).__init__(*args, **kwargs)
       self.fields['sub_category'] = forms.ModelChoiceField(queryset = SubCategory.objects.filter(category__id = self.fields['category'] ))

Но это не работает. Должен ли я использовать некоторые AJAX и JQuery для этого или есть другой способ, который вы можете предложить?

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос