Как создать выпадающий список в 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.