Как создать выпадающий список в Django

как создать два поля Dropdown в Django. первое - штат, & второе - город

View.py file:
    def dropdown(request,state_slug):
    context={}
    stateO=State.objects.order_by('name')
    context['state']=stateO
    sO=State.objects.get(state_slug=state_slug)
    cityO=City.objects.filter(State=sO).order_by('name')
    context['city']=cityO
    context['my_state']=sO
    return render(request,'drop.html',context)

models.py:

    class State(models.Model):
    name = models.CharField(max_length=96)
    state_slug = models.SlugField(max_length=96, blank=True)

    def save(self, *args, **kwargs): # Saving The Modefied Changes
        if not self.state_slug:
            self.state_slug = slugify(self.name)
            super(State, self).save(*args, **kwargs)
            
    def __str__(self): # Dundar Method
        return self.name

class City(models.Model):
    State = models.ForeignKey(State, on_delete=models.CASCADE)
    name = models.CharField(max_length=100)

    def __str__(self):
        return self.name

Url.py:

 path('dropdown/<slug:state_slug>/',views.dropdown, name="dropdown")

html файл:

    <body>
   <select>
   {% for i in state %}
          <option value="{% url 'dropdown' i.state_slug %}}">{{i}}</option>
          {% endfor %}
      </select>
      <select>
         {% for j in city %}
        <option value="{{ j }}">{{ j }}</option>
        {% endfor %}
    </select>
  </body>

отфильтровать название города на основе названия штата. без использования Ajex.

Вернуться на верх