Django abhängig wählen

Ich weiß, dass es viele Antworten auf diese Frage gibt, aber ich bin neu in Django und weiß nicht, wie ich diese Lösungen implementieren soll. Zuerst was ich machen will. Das sind meine Modelle:

class Region(models.Model):

    name = models.CharField(max_length=255, verbose_name=_("Name"))
    slug = models.SlugField(max_length=150, unique=True, null=True)

    def save(self,*args, **kwargs):
        if not self.slug:
            self.slug = slugify(self.name)
        super(Region,self).save(*args,**kwargs)

    def __unicode__(self):
        return u'%s' % (self.name)

    class Meta:
        verbose_name = _('Region')
        verbose_name_plural = _('Regions')

class District(models.Model):

    name = models.CharField(max_length=255, verbose_name=_("Name"))
    slug = models.SlugField(max_length=150, unique=True, null=True)
    region = models.ForeignKey(Region,verbose_name=_("Region"))

    def save(self, *args, **kwargs):
        if not self.slug:
            self.slug = slugify(self.name)
        super(District, self).save(*args, **kwargs)

    def is_in_region(self, region):
        if self.region == region:
            return True
        else:
            return False

    def __unicode__(self):
        return u'%s' % (self.name)

    class Meta:
        verbose_name = _("District")
        verbose_name_plural = _("Districts")

uf der Frontend-Seite möchte ich eine Region auswählen und mit Bezirken werden die Bezirke dieser Region angezeigt. Das meine Ansichten:

class SearchView(ListView):

    template_name = 'advert/list_view.html'

    def all_json_models(self, request, region):
        current_reg = Region.objects.get(slug=region)
        districts = District.objects.all().filter(region=current_reg)
        json_models = serializers.serialize("json", districts)
        return http.HttpResponse(json_models, mimetype="application/javascript")

    def get(self, request, *args, **kwargs): 
        return self.post(request, *args, **kwargs)

    def post(self, request, *args, **kwargs):
        self.request = request
        try:
            self.page = int(self.request.GET.get('page','1'))
        except:
            self.page = 1
        self.queryset = ""
        return super(SearchView, self).get(request, *args, **kwargs)

    def get_queryset(self):
        """We have to bypass the queryset because
        we are joining several object lists together. """
        return None

    def get_context_data(self, **kwargs):
        context['regions'] = Region.objects.all().order_by("name")
        return context

the get_context_data Methode ist viel länger, aber ich schreibe hier nur eine einfache. Ich benutze für diese Lösung von dieser Websitehttp: //www.devinterface.com/blog/en/2011/02/how-to-implement-two-dropdowns-dependent-on-each-other-using-django-and-jquery. Aber immer noch mit Bezirken auswählen funktioniert nicht. Ich versuche die Methode all_json_models in Views in diese Klasse zu schreiben, aber sie ruft diese Methode immer noch nicht auf. Ist hier jemand, der mir sagen kann warum? Vielen Dan

Antworten auf die Frage(3)

Ihre Antwort auf die Frage