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迭代器和生成器介绍
Mar 06 Python
Python实现程序的单一实例用法分析
Jun 03 Python
简单了解Python中的几种函数
Nov 03 Python
Python标准库inspect的具体使用方法
Dec 06 Python
python PyTorch参数初始化和Finetune
Feb 11 Python
Python中的self用法详解
Aug 06 Python
Python如何在DataFrame增加数值
Feb 14 Python
windows python3安装Jupyter Notebooks教程
Apr 13 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
Aug 07 Python
基于python模拟TCP3次握手连接及发送数据
Nov 06 Python
Django用内置方法实现简单搜索功能的方法
Dec 18 Python
Python词云的正确实现方法实例
May 08 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
discuz目录文件资料汇总
2014/12/30 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
2017/11/17 PHP
php实现微信分享朋友链接功能
2019/02/18 PHP
Script的加载方法小结
2011/01/12 Javascript
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
2011/02/14 Javascript
js Array对象的扩展函数代码
2013/04/24 Javascript
jquery控制display属性为none或block
2014/03/31 Javascript
AngularJS中取消对HTML片段转义的方法例子
2015/01/04 Javascript
jQuery实现提交按钮点击后变成正在处理字样并禁止点击的方法
2015/03/24 Javascript
javascript实现tab切换的两个实例
2015/11/05 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
2016/03/24 Javascript
AngularJS入门教程之REST和定制服务详解
2016/08/19 Javascript
微信小程序  生命周期详解
2016/10/27 Javascript
Vue.use源码分析
2017/04/22 Javascript
详解vue中computed 和 watch的异同
2017/06/30 Javascript
Vue的实例、生命周期与Vue脚手架(vue-cli)实例详解
2017/12/27 Javascript
详解VUE自定义组件中用.sync修饰符与v-model的区别
2018/06/26 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
vue中使用axios post上传头像/图片并实时显示到页面的方法
2018/09/27 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
C#返回当前系统所有可用驱动器符号的方法
2015/04/18 Python
深入理解python多进程编程
2016/06/12 Python
python简单实现获取当前时间
2016/08/27 Python
Python通过调用有道翻译api实现翻译功能示例
2018/07/19 Python
Windows下Python3.6安装第三方模块的方法
2018/11/22 Python
Python判断有效的数独算法示例
2019/02/23 Python
python3实现raspberry pi(树莓派)4驱小车控制程序
2020/02/12 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧(自定义信号与槽)详解与实例
2020/03/06 Python
python读取yaml文件后修改写入本地实例
2020/04/27 Python
狗狗玩具、零食和咀嚼物的月度送货服务:Super Chewer
2018/08/22 全球购物
最经典的商业地产项目广告词
2014/03/13 职场文书
四年级学生评语大全
2014/04/21 职场文书
幼儿园安全责任书范本
2014/07/24 职场文书
党员查摆四风问题思想汇报
2014/10/25 职场文书
学校扫黄打非工作总结
2015/10/15 职场文书
推普标语口号大全
2015/12/26 职场文书