Django choices下拉列表绑定实例

时间:2021-05-23

Models内容

from django.db import modelsfrom django import forms# Create your models here.class SysConfigForm(forms.Form): DatabaseType = forms.ChoiceField(choices=[('sqlserver', 'SQLServer'), ('oracle', 'Oracle')])class UserInfo(forms.Form): vip_type = ((0, u'普通用户'),(1, u'高级用户'),) vip = forms.CharField(widget=forms.widgets.Select(choices=vip_type,attrs={'class':'form-control','with':'25px'}), )class Months(forms.Form): list = ((1,u'一月'),(2,u'二月'),(3,u'三月'),(4,u'四月'),(5,u'五月'),(6,u'六月'), (7, u'七月'),(8,u'八月'),(9,u'九月'),(10,u'十月'),(11,u'十一月'),(12,u'十二月'),) obj_month = forms.CharField(widget=forms.widgets.Select(choices=list, attrs={'class': 'form-control'}), )class UserUsesSourceForm(forms.Form): # some fields here SOURCES_CHOICES = ( ('A', 'A'), ('E', 'E'), ) username = forms.CharField(label=("Username"), max_length=30, help_text = ("Required")) provider = forms.ChoiceField(widget=forms.Select(), choices=SOURCES_CHOICES, initial=SOURCES_CHOICES[1])

Views内容

from django.shortcuts import render,HttpResponsefrom polls import modelsfrom django.template.loader import get_template# Create your views here.def index(request): obj = models.UserInfo() if request.method == 'POST': user_obj = models.UserInfo(request.POST) if user_obj.is_valid(): print(user_obj.clean()) else: user_error = user_obj.errors print (user_error) return render(request,'index.html',{'obj':obj,'user_error':user_error}) months = models.Months() return render(request,'index.html',{'obj':obj,'months':months})#获取下拉列表选中记录def Test01(request): template = get_template('test01.html') form = models.UserUsesSourceForm(initial={"username": request.user.username, 'provider': models.UserUsesSourceForm.SOURCES_CHOICES[1]}) #return render_to_response('update_datasource.html', context_instance=RequestContext(request, params)) html = template.render(locals()) return HttpResponse(html)

Test页面内容

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><form action="" method="post"> {% csrf_token %} {% if form.non_field_errors %} <p> {% for error in form.non_field_errors %} <div class="text-error">{{ error|escape }}</div> {% endfor %} </p> {% endif %} <div class="control-group"> <label class="control-label" for="id_provider">Data source</label> <div class="controls"> {{form.provider}} </div> </div></form></body></html>

显示结果为

补充知识:django前端页面下拉选择框默认值设置

1,前端样式

2,前端html代码

<select name="row.status"> <option value="ON" {% if row.status == 'ON' %} selected="selected" {% endif %}>ON</option> <option value="OFF" {% if row.status == 'OFF' %} selected="selected" {% endif %}>OFF</option></select>

以上这篇Django choices下拉列表绑定实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章