Django choices下拉列表綁定實(shí)例
Models內(nèi)容
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’高級(jí)用戶’),) 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內(nèi)容
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頁(yè)面內(nèi)容
<!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 for='id_provider'>Data source</label> <div class='controls'> {{form.provider}} </div></div></form></body></html>
顯示結(jié)果為
補(bǔ)充知識(shí):django前端頁(yè)面下拉選擇框默認(rèn)值設(shè)置
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下拉列表綁定實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 不同瀏覽器對(duì)XML的解析是不同的2. XML入門的常見(jiàn)問(wèn)題(一)3. chat.asp聊天程序的編寫方法4. 告別AJAX實(shí)現(xiàn)無(wú)刷新提交表單5. 讀寫xml文件的2個(gè)小函數(shù)6. asp讀取xml文件和記數(shù)7. IE6/IE7/IE8/IE9中tbody的innerHTML不能賦值的完美解決方案8. asp使用Weekday函數(shù)計(jì)算項(xiàng)目的結(jié)束時(shí)間9. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向10. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案
