[Django]下拉表单与模型查询
前言:本文主要针对自定义下拉表单制作,下拉表单的内容是取至于数据库,即动态实现下拉表单
正文:
动态实现下拉表单有两种方法:
一、自己手动写 html 模板中的 <form ...> </form>
在views 中,将所需要的数据传递过去,比如 names_list = [1, 2, 3, 4]
在 html 中
<select> {% for x in name_list %} <option value ="{{ x }}">{{ x }}</option> {% endfor %} </select>
二、使用 Form 自动生成表单
这就需要在 views 中 动态初始化表单
具体的内容自己查 相应版本的 django文档去,关键字查找模型表单
这里采用第一种方法,例:
HTML模板:
<select name="时间">
{%for downlist_tim in downlist_tim%}
<option value="{{downlist_tim.finish_time}}">{{downlist_tim.finish_time}}</option>
{%endfor%}
<option value="请选择时间" selected="selected">请选择时间</option>
</select>
views视图函数:
from django.shortcuts import render from keywork.models import LOrder downlist_tim = LOrder.objects.raw('SELECT DISTINCT id,finish_time FROM keywork_lorder group by finish_time') #或者这里可以换成downlist_tim = LOrder.objects.values('finish_time').distinct(),这里使用数据库为mysql,有个剔重问题下章讲到! return render(request, 'keywork/index.html',{'downlist_tim':downlist_tim,})
study just for life!