Django choices下拉列表绑定实例


Posted in Python onMarch 13, 2020

Models内容

from django.db import models
from 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,HttpResponse
from polls import models
from 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 choices下拉列表绑定实例

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

1,前端样式

Django choices下拉列表绑定实例

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下拉列表绑定实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 文件与目录操作
Dec 24 Python
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python实现的Kmeans++算法实例
Apr 26 Python
Python实现国外赌场热门游戏Craps(双骰子)
Mar 31 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
对python3中pathlib库的Path类的使用详解
Oct 14 Python
python文件选择对话框的操作方法
Jun 27 Python
python:解析requests返回的response(json格式)说明
Apr 30 Python
解决echarts中饼图标签重叠的问题
May 16 Python
Python类super()及私有属性原理解析
Jun 15 Python
浅谈优化Django ORM中的性能问题
Jul 09 Python
Python中Qslider控件实操详解
Feb 20 Python
django model object序列化实例
Mar 13 #Python
浅析python标准库中的glob
Mar 13 #Python
Python3标准库glob文件名模式匹配的问题
Mar 13 #Python
python编写俄罗斯方块
Mar 13 #Python
探秘TensorFlow 和 NumPy 的 Broadcasting 机制
Mar 13 #Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
Mar 13 #Python
django处理select下拉表单实例(从model到前端到post到form)
Mar 13 #Python
You might like
十天学会php之第十天
2006/10/09 PHP
php密码生成类实例
2014/09/24 PHP
php mysql PDO 查询操作的实例详解
2017/09/23 PHP
php strftime函数的详细用法
2018/06/21 PHP
js函数使用技巧之 setTimeout(function(){},0)
2009/02/09 Javascript
formStorage 基于jquery的一个插件(存储表单中元素的状态到本地)
2012/01/20 Javascript
JavaScript中instanceof运算符的用法总结
2013/11/19 Javascript
JavaScript中的undefined学习总结
2013/11/30 Javascript
基于jQuery滑动杆实现购买日期选择效果
2015/09/15 Javascript
js跨域请求数据的3种常用的方法
2015/12/01 Javascript
jQuery实现图片加载完成后改变图片大小的方法
2016/03/29 Javascript
详解本地Node.js服务器作为api服务器的解决办法
2017/02/28 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
JavaScript 中的 this 简单规则
2017/09/19 Javascript
jQuery Datatables表头不对齐的解决办法
2017/11/27 jQuery
JavaScript实现多重继承的方法分析
2018/01/09 Javascript
JavaScript如何把两个数组对象合并过程解析
2019/10/10 Javascript
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
[40:27]完美世界DOTA2联赛PWL S3 PXG vs GXR 第一场 12.19
2020/12/24 DOTA
python实现输入数字的连续加减方法
2018/06/22 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
2018/09/25 Python
在TensorFlow中屏蔽warning的方式
2020/02/04 Python
Html5游戏开发之乒乓Ping Pong游戏示例(一)
2013/01/21 HTML / CSS
基于html5实现的图片墙效果
2014/10/16 HTML / CSS
Sneaker Studio乌克兰:购买运动鞋
2018/03/26 全球购物
汉森冲浪板:Hansen Surfboards
2018/05/19 全球购物
屈臣氏马来西亚官网:Watsons马来西亚
2019/06/15 全球购物
C#如何判断当前用户是否输入某个域
2015/12/07 面试题
财务分析个人的自荐书范文
2013/11/24 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
党员服务承诺书
2014/05/28 职场文书
幼儿园门卫岗位职责范本
2014/07/02 职场文书
自荐信格式模板
2015/03/27 职场文书
催款函范文
2015/06/24 职场文书
2016秋季幼儿园开学寄语
2015/12/03 职场文书