自定义Django Form中choicefield下拉菜单选取数据库内容实例
工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm models)中提取.
form.py为:
class objectForm(forms.Form):
pre = choicefield(lable = "工作")
最后的解决办法:
1.定义一个函数
def get_object(request):
r = [('', '----')]
for obj in objectModels.objects.all():
r = r + [(obj.id, obj.name)]
return r
2.在views.py的视图函数中加入
form.fields['pre'].choices = get_object(request)
收工!
百度了很多Django Form的问题都没有得到解决,写出来方便后来人。
补充知识:django form表单select下拉菜单数据源实时更新(每次访问获取一次数据库内容)
重点是: Form类对象实例化的时候,在类里边__init()__函数中加入重新更新select数据源
from django.shortcuts import render,redirect
from app3 import models
from app3 import form
from django import forms
from django.forms import widgets
#静态字段,value_list获取列表[()]加元组返回值
class Fromdb(forms.Form):
purpose = forms.CharField()
user = forms.IntegerField(
widget=widgets.Select()
)
#保证每次访问重新获取最新数据
def __init__(self,*args,**kwargs):
super(Fromdb,self).__init__(*args,**kwargs)
self.fields["user"].widget.choices=models.Stu.objects.values_list("id", "name")
def formdb(request):
stus = Fromdb()
return render(request,"formdb.html",{"stus":stus})
以上这篇自定义Django Form中choicefield下拉菜单选取数据库内容实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Python之Django自动实现html代码(下拉框,数据选择)
我就废话不多说了,还是直接看代码吧! #模板 class IndexForm(forms.Form): # 模板,用户提交的name和这里的变量名一定要是一致的.否则不能获取数据 user = forms.CharField(min_length=6, error_messages={'required': '用户名不能为空', 'min_length': '用户名长度不能小于6'}) email = forms.EmailField(error_messages={'required': '邮
-
django处理select下拉表单实例(从model到前端到post到form)
现在假如要写一个按照"标题",'内容','作者'等等进行针对性的选择,这时需要涉及到使用select下拉表单来进行选择.django是可以比较简单的解决这个问题的. 下面是model: from django.db import models class TestModel(models.Model): SELVALUE = ( ('标题', 'first'), #前面是展示在前端界面的内容,后面的'first'是真正存在数据库中的 ('内容', 'second'), ('作者', '
-
Django choices下拉列表绑定实例
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_ty
-
自定义Django Form中choicefield下拉菜单选取数据库内容实例
工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm models)中提取. form.py为: class objectForm(forms.Form): pre = choicefield(lable = "工作") 最后的解决办法: 1.定义一个函数 def get_object(request): r = [('', '----')] for obj in objectModels.objects.al
-
BootStrap日期控件在模态框中选择时间下拉菜单无效的原因及解决办法(火狐下不能点击)
今天收到程序组提交的一个兼容BUG,在火狐中使用模态框加载日期控件时选择时间下拉菜单没有效果(不能点击),而在谷歌中却是好的, 排错思路: 1,在当前页面主层放置一个时间控件,测试通过 2,在ajax加载页放置一个时间控件,测试通过 3,在模态框最外层放置一个时间控件,不通过 主要原因是模态框与时间下拉菜单层级关系造成(z-index),因时间控件是收bootstrap的时间控件.js文件生成,所以导致在页面与css样式表中修改无效,网上有直接修改bootstrap的时间控件.js文件,然而bo
-
yii2框架中使用下拉菜单的自动搜索yii-widget-select2实例分析
本文实例讲述了yii2框架中使用下拉菜单的自动搜索yii-widget-select2的方法.分享给大家供大家参考,具体如下: github中源代码地址:https://github.com/kartik-v/yii2-widget-select2 利用composer.phar安装此插件: php composer.phar require kartik-v/yii2-widget-select2 "*" 引用方法: use kartik\select2\Select2; 源代码:
-
bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
bootstrap-table下表格中增加操作的btn,如果是下拉菜单,那么在每一页最后一行点击下拉菜单,会出现滚动条,解决方法: 修改这个类,但是这个类改了会有点影响toolbar的显示,不过问题不大,加个margin就可以了 .fixed-table-body{ overflow:visible !important; } 以上所述是小编给大家介绍的bootstrap table 表格中增加下拉菜单末行出现滚动条解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的
-
浅谈Vue Element中Select下拉框选取值的问题
之前写了.一个原生的select的,因为展示效果原因,给删除掉了,忘记保存代码了,现在大家展示使用elementUI的下拉框封装一个组件,供咱们项目中经常调用,减少代码量. html: <el-select v-model="ite" placeholder="请选择" value-key="mateGroup"> <el-option style="width: auto" :disabled="
-
JavaScript结合PHP实现网页制作中双下拉菜单的动态实现
本文介绍了双下拉菜单的动态实现的代码,例如:在主菜单中有"焦点新闻"."生活时尚"."心情故事"三个选项,通过"焦点新闻"的选择,子菜单自动生成如"国内"."国际"."体育"."文娱",依此类推. 利用javascript,我们可以轻松实现上述效果.但问题是,如果菜单中的选项是从数据库(或其他文件)中动态提取,实现起来就并不是轻而易举的了.笔者根据
-
Android中ListView下拉刷新的实现方法实例分析
本文实例讲述了Android中ListView下拉刷新的实现方法.分享给大家供大家参考,具体如下: ListView中的下拉刷新是非常常见的,也是经常使用的,看到有很多同学想要,那我就整理一下,供大家参考.那我就不解释,直接上代码了. 这里需要自己重写一下ListView,重写代码如下: package net.loonggg.listview; import java.util.Date; import android.content.Context; import android.util.
-
ASP中SELECT下拉菜单同时获取VALUE和TEXT值的实现代码
在1个注册页面1.asp ,先选择镇,如下代码: <form action="reguser2.asp" method="post" name="form1" onSubmit="return checksumit();"> <table width="100%" border="1" cellspacing="0" cellpadding=&quo
-
ASP+JS三级联动下拉菜单[调用数据库数据]
网上三级菜单多是多但是代码都比较烦,我这个应该说还是比较直观的:'肯定先要连接数据库了,不用说了 '数据库结构 '类别1表名称:a 字段:ID,Name 说明:ID为主键是类别1的ID值,Name为类别1的名称 '类别2表名称:aa 字段:ID,aID,Name 说明:ID为主键是类别2的ID值,aID为所属类别1的ID值,Name为类别2的名称 '类别3表名称:aaa 字段:ID,aID,aaID,Name 说明:ID为主键是类别3的ID值,aID为所属类别1的ID值,aaID为所
-
android使用PopupWindow实现页面点击顶部弹出下拉菜单
实现此功能没有太多的技术难点,主要通过PopupWindow方法,同时更进一步加深了PopupWindow的使用,实现点击弹出一个自定义的view,view里面可以自由设计,比较常用的可以放一个listview. demo中我只是一个点击展示,简单的使用了fade in out的动画效果,也没有精美的图片资源,看着也丑,不过这么短的时间,让你掌握一个很好用的技术,可以自己扩展,不很好么? 废话不说了,直接上代码: MainActivity.java public class MainActivi
随机推荐
- oblog_4.6_SQL 语句
- 使用vbscript生成36进制自动增长序号的实现代码
- Web技术实现移动监测的介绍
- 简单谈谈lua和c的交互
- Javascript Jquery 遍历Json的实现代码
- JavaScript排序算法之希尔排序的2个实例
- IOS开发之判断两个数组中数据是否相同实例详解
- Java数组越界问题实例解析
- 一些Oracle数据库中的查询优化建议综合
- PHP使用flock实现文件加锁的方法
- 在Python中使用__slots__方法的详细教程
- python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
- javascript实现的一个自定义长度的文本自动换行的函数。
- javascript 两种声明函数的方式的分析
- Ubuntu安装MySQL-python方法
- 关于重新组织和重新生成索引sp_RefreshIndex的介绍
- 解析Android中实现滑动翻页之ViewFlipper的使用详解
- 通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
- jquery 关于event.target使用的几点说明介绍
- jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
