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 简易计算器程序,代码就几行
Aug 29 Python
Python字符串转换成浮点数函数分享
Jul 24 Python
Python 文件管理实例详解
Nov 10 Python
Python使用Phantomjs截屏网页的方法
May 17 Python
django框架使用方法详解
Jul 18 Python
详细介绍Python进度条tqdm的使用
Jul 31 Python
使用Python制作一个打字训练小工具
Oct 01 Python
python 利用Pyinstaller打包Web项目
Oct 23 Python
python 删除系统中的文件(按时间,大小,扩展名)
Nov 19 Python
python实现不同数据库间数据同步功能
Feb 25 Python
在python中实现导入一个需要传参的模块
May 12 Python
Python数据可视化之Seaborn的安装及使用
Apr 19 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
建立文件交换功能的脚本(二)
2006/10/09 PHP
php fckeditor 调用的函数
2009/06/21 PHP
用Zend Encode编写开发PHP程序
2010/02/21 PHP
YII2 实现多语言配置的方法分享
2017/01/11 PHP
漂亮的仿flash菜单,来自蓝色经典
2006/06/26 Javascript
通过JAVAScript实现页面自适应
2007/01/19 Javascript
基于Jquery的跨域传输数据(JSONP)
2011/03/10 Javascript
Jquery实现列表(隔行换色,全选,鼠标滑过当前行)效果实例
2013/06/09 Javascript
JScript分割字符串示例代码
2013/09/04 Javascript
弹出最简单的模式化遮罩层的js代码
2013/12/04 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
JS应用正则表达式转换大小写示例
2014/09/18 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
2016/09/20 Javascript
Ionic项目中Native Camera的使用方法
2017/06/07 Javascript
浅谈express 中间件机制及实现原理
2017/08/31 Javascript
angular2 ng2 @input和@output理解及示例
2017/10/10 Javascript
基于react后端渲染模板引擎noox发布使用
2018/01/11 Javascript
JS模拟实现京东快递单号查询
2020/11/30 Javascript
Python3实现从指定路径查找文件的方法
2015/05/22 Python
Python实现自动添加脚本头信息的示例代码
2016/09/02 Python
python TCP Socket的粘包和分包的处理详解
2018/02/09 Python
PyTorch上实现卷积神经网络CNN的方法
2018/04/28 Python
pytorch 限制GPU使用效率详解(计算效率)
2020/06/27 Python
Python实现封装打包自己写的代码,被python import
2020/07/12 Python
使用python求斐波那契数列中第n个数的值示例代码
2020/07/26 Python
html5 学习简单的拾色器
2010/09/03 HTML / CSS
伦敦眼门票在线预订:London Eye
2018/05/31 全球购物
高中生自我鉴定范文
2013/10/30 职场文书
企业理念标语
2014/06/09 职场文书
县委党的群众路线教育实践活动工作情况报告
2014/10/25 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
2021/03/31 HTML / CSS
Linux系统下安装PHP7.3版本
2021/06/26 PHP
Python编程编写完善的命令行工具
2021/09/15 Python
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby