2016-03-21 3 views
-1

auswähle Ich mache ein Formular, in dem ich Landstaatsstadtrelation benötige. Wenn ich irgendein Land vorwähle, dann sollte nur sein in Verbindung stehender Zustand zeigen. meine models.pywie man Beziehung zwischen Staat und Land so herstellt, dass nur in Verbindung stehendes Stat zeigt, wenn irgendein Land

class Country(models.Model): 
    countryId=models.IntegerField(default=0) 
    country=models.CharField(max_length=50) 

    def __str__(self): 
     return self.country 

class State(models.Model): 
    state_id=models.IntegerField(default=0) 
    state=models.CharField(max_length=50) 

    def __str__(self): 
     return self.state 


class City(models.Model): 
    cityid=models.IntegerField(default=0) 
    city=models.CharField(max_length=50) 

    def __str__(self): 
     return self.city 

und views.py

class alldataviewset(viewsets.ModelViewSet): 
    print "in views et" 
    queryset=All.objects.all() 
    serializer_class=AllSerializers 
    print "before get" 
    def list(self, request,*args): 
     data=request.GET 
     var=data.get('var') 
     print"before if",var 
     if var=='101': 
      print "inside if" 
      for i in range(1,42): 
       print "inside for" 
       print "states of india",i 


     else: 
      print "hahahha" 

     return Response("serializer.data") 

meine Ansichten ist working.but seinen Willen sehr lange, wenn Schreib wie this.there ca. 260 Land für meine database.and beträgt ca. 4200 sagt also, wenn ich den ganzen Code schreibe wie ich, dann muss ich den Code innerhalb meiner views.py ca. 4500 mal schreiben. Ich denke es nicht richtige Weise. bitte lassen Sie mich wissen, wie kann ich meinen Code schreiben.

Antwort

0

Sie können chained jquery-Bibliothek verwenden.

Rewrite render_option für foreignkey Feld in forms.py:

die Beziehung zwischen Ihnen Modelle verwenden ist One Viele verwenden Verwendung models.ForeignKeyhere

Schauen Sie sich das post für ausgewählte verbunden.

+0

Für viele tausendste Kind können Sie ajax http://stackoverflow.com/questions/35611775/how-to-limit-the-choices-of-a-child-field-based-on-parent-fields verwenden -Wert/35638407 # 35638407 – erajuan