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系列之新版本导入httplib模块报ImportError解决方案
May 23 Python
Python入门篇之正则表达式
Oct 20 Python
Python脚本实现集群检测和管理功能
Mar 06 Python
在Python的struct模块中进行数据格式转换的方法
Jun 17 Python
Python可变参数函数用法实例
Jul 07 Python
python版本的读写锁操作方法
Apr 25 Python
全面理解Python中self的用法
Jun 04 Python
Python对字符串实现去重操作的方法示例
Aug 11 Python
详解Python3 基本数据类型
Apr 19 Python
vim自动补全插件YouCompleteMe(YCM)安装过程解析
Oct 21 Python
python文字转语音实现过程解析
Nov 12 Python
python随机模块random的22种函数(小结)
May 15 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
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
2013/04/08 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十五)
2014/06/30 PHP
PHP实现的多进程控制demo示例
2019/07/22 PHP
用tip解决Ext列宽度不够的问题
2008/12/13 Javascript
当jQuery遭遇CoffeeScript的时候 使用分享
2011/09/17 Javascript
JS清除IE浏览器缓存的方法
2013/07/26 Javascript
图标线性回归斜着移动到指定的位置
2013/08/16 Javascript
JQuery插件开发示例代码
2013/11/06 Javascript
jquery中EasyUI实现异步树
2015/03/01 Javascript
js兼容火狐显示上传图片预览效果的方法
2015/05/21 Javascript
JQuery替换DOM节点的方法
2015/06/11 Javascript
Node.js 条形码识别程序构建思路详解
2016/02/14 Javascript
微信小程序开发之视频播放器 Video 弹幕 弹幕颜色自定义实例
2016/12/08 Javascript
jQuery实现移动端Tab选项卡效果
2017/03/15 Javascript
详解vue + vuex + directives实现权限按钮的思路
2017/10/24 Javascript
基于Vue的移动端图片裁剪组件功能
2017/11/28 Javascript
vue 的keep-alive缓存功能的实现
2018/03/22 Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
2019/03/28 jQuery
解决vue-cli webpack打包开启Gzip 报错问题
2019/07/24 Javascript
在layui.use 中自定义 function 的正确方法
2019/09/16 Javascript
js实现div色块碰撞
2020/01/16 Javascript
Python写的Socks5协议代理服务器
2014/08/06 Python
Python 执行字符串表达式函数(eval exec execfile)
2014/08/11 Python
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
python一行sql太长折成多行并且有多个参数的方法
2018/07/19 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
Python While循环语句实例演示及原理解析
2020/01/03 Python
利用python实现凯撒密码加解密功能
2020/03/31 Python
Python爬虫设置Cookie解决网站拦截并爬取蚂蚁短租的问题
2021/02/22 Python
俄罗斯商务邀请函
2014/01/26 职场文书
学校门卫岗位职责
2014/03/16 职场文书
党风廉政建设责任书
2014/04/14 职场文书
幼儿园感恩节活动方案2014
2014/10/11 职场文书
计划生育工作汇报
2014/10/28 职场文书
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
2022/04/04 Python