【发布时间】:2020-06-28 09:23:44
【问题描述】:
我有两个来自 mysql 数据库的下拉列表,它们都是相互依赖的。我需要的是当我从第一个下拉列表中选择一个区域时,第二个下拉列表以相应地过滤匹配第一个下拉列表中的区域。谁能帮我吗。 [第一个下拉列表是区域,第二个下拉列表是区域]。请帮助我解决这两个文件中的更改。提前致谢。
models.py
from django.db import models
在这里创建您的模型。
views.py
def 仪表板视图(请求): 导入mysql.connector
connection = mysql.connector.connect(host='localhost',
database='lab_view',
user='root',
password='inbabtslabuser'
)
sql_select_Query ="""select DISTINCT Area from main_labview;"""
cursor = connection.cursor()
cursor.execute(sql_select_Query)
records = cursor.fetchall()
sql_select_Query ="""select DISTINCT Zone from main_labview;"""
cursor = connection.cursor()
cursor.execute(sql_select_Query)
records1 = cursor.fetchall()
sql_select_Query ="""select DISTINCT Rack from main_labview;"""
cursor = connection.cursor()
cursor.execute(sql_select_Query)
records2 = cursor.fetchall()
a_list=[]
z_list=[]
r_list=[]
for row in records2:
r_list.append(row[0])
for row in records:
a_list.append(row[0])
for row in records1:
z_list.append(row[0])
print("\n\n###########################################\nFrom Database:\nAreas: ", a_list)
print("Zones: ",z_list)
print("###########################################\n\n")
context={'Area':a_list, 'Zones':z_list, 'Racks':r_list}
return render(request, 'app/dashboard.html', context)
.html
<form action="/db2/" method="POST"> {% csrf_token %}
<strong><font color="red">Area:</font></strong>
<select id="Area_ID" name="Area" >
<option value="None" selected>Select Area</option>
{% for a in Area %}
<option value="{{ a }}">{{ a }}</option>
{% endfor %}
</select>
<br><br>
<strong><font color="red" >Zone:</font></strong>
<select id="Zone_ID" name="Zone" >
<option value="None" selected>Select Zone</option>
{% for z in Zones %}
<option value="{{ z }}">{{ z }}</option>
{% endfor %}
</select>
<br> </br>
<button type="submit" name="try" onClick="location.href='{% url 'db2' %}';" value='submits'>Find Racks</button><br>
</form>
【问题讨论】:
-
你能分享你的model.py代码sn-p
-
你好,我已经分享了我的 models.py,我还没有在 sn-p 中做任何事情。请仔细查看,谢谢。 @ShahidTariq
-
@andarsh 您的 models.py 文件中没有任何内容。如何为您的应用创建模型
-
我只是从 mysql 数据库的查询中获取数据,并创建一个列表并将该数据列表推送到 html 页面中。我真的必须为此创建models.py吗?如果可以,请指导我,我对 django 很陌生!谢谢 。 @ShahidTariq
-
@andarsh Django 为 ORM 处理后端数据库提供了最好的支持。您只需要使用 Django 模型创建表,而不是使用 ORM 查询来创建更新和删除操作。在这里查看docs.djangoproject.com/en/3.0/topics/db/models/…
标签: django django-models django-rest-framework django-forms django-views