导读:今天首席CTO笔记来给各位分享关于django怎么获取下拉选择框的值的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
django 获取表单页面复选框的值 报错
class AddBookForm(forms.Form):
def __init__(self,*args,**kwargs):
...
self.fields['authors'].choices = [(author.id,author.first_name + " " + author.last_name) for author in Author.objects.all()]
self.fields['publisher'].choices = [('','-----------')] + [(publisher.id,publisher.name) for publisher in Publisher.objects.all()]
...
form里这两行有问题,这行如果你想重新赋值的话应该给一个queryset,而不是列表。如果你想测试一下的话可以先把这行注释掉,然后你在提交看看表单验证是否能通过。如果通过了那确定问题就是这里了。我想我应该不会错。。。
你好,请问你知道如何利用django from去生成一个树形下拉框?
谢邀请
1。在form类里建字段category
2。在__init__里获取所有choice=cc
3。对cc进行树状排序,递归,深度优先搜索,得到bb
4。choices属性赋值
应该还有其他做法,sort_dfs自己试试实现吧
class xxx(forms.Form):
category = forms.ChoiceField(label=u'选择分类',required=False)
def __init__(self, request, *args, **kwargs):
super(xxx, self).__init__(*args, **kwargs)
cc=Category.objects.all()
bb=sort_dfs(cc)
self.fields['category'].choices = bb
如何利用Django的Form类动态生成下拉列表
有两种方法。
一、自己手动写 html 模板中的 form ... /form
在views 中,将所需要的数据传递过去,比如 names_list = [1, 2, 3, 4]
在 html 中
select
{% for x in name_list %}
option value ="{{ x }}"{{ x }}/option
{% endfor %}
/select
二、使用 Form 自动生成表单
这就需要在 views 中 动态初始化表单
具体的内容自己查 相应版本的 django文档去
内容在“Forms”中。
最后给你个建议吧。好好看文档去,在这提问等答案的功夫,不知能看多少文档。
学习从来都是自己的事情,多看多读多思考,实在不会再去问。
django python开发中表单其中一项设置动态下拉菜单,如何让下拉...
django python开发中表单其中一项设置动态下拉菜单,其中下拉菜单的选项是从接口获取的对象集合:
代码如下:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os, sys
from django.shortcuts import render
from django.shortcuts import render_to_response
from django.http import HttpResponse,HttpResponseRedirect
import requests
from django import forms
from blog.models import Info
attrs_dict={'class':'required'}
class InfoForm(forms.Form):
def _init_(self,*args,**kwargs):
r=requests.get('...',**kwargs)
print r
super(InfoForm,self)._init_(*args,**kwargs)
self.fields['product'].choices=[('','-------------')]+[(info.id,info.name) for info in r]
product = forms.ChoiceField(label="产品名称",choices=(),widget=forms.Select(attrs=attrs_dict))
Django-select下拉菜单的显示与保存
Django-select下拉菜单的显示与保存:
说明: 这里不用多解释,就是普通定义emp表和dept表,注意emp的dept部门字段使用的ForeignKey多对一关系,去关联dept表的主键(dept没有重新定义主键,则是默认的主键id)
说明: 这里的例子是保存时候的操作,既要展示不同部门的下拉菜单,又要能够保存成功。需要注意以下地方:
1.要重新定义get,实现当加载网页的时候能够展示已保存的部门信息,所以有个 deptlist = dept.objects.all() ,在html中要使用deptlist取部门表中的值。
2.当使用POST要保存的时候还是按照正常逻辑,先从html取对应的值,然后新建一个emp()对象,给对应字段赋值后保存。
3.保存部门的时候,对于外键,emp表是主动增加了一个叫做emp_id的字段,所以要使用 emp.dept_id = dept ,将获取到的dept(id)传给emp的dept_id字段。
说明: 下拉单选菜单使用 select,option ,使用for循环从deptlist中取部门的值展示出来。所以是 {% for i in deptlist.values %} ,注意显示的字段使用deptname,对应value使用id来用来存储在数据表中。
django将从数据库获取的值作为下拉选择框(Choice_field)的默认值
首先,在django 视图函数中,传递 obj_list = [1, 2, 3] 类似这样的一个列表。
def show_data(request):
obj_list = [1, 2, 3]
pass
return render_to_response('index.html', {'obj_list': obj_list})
然后在 index.html 模板文件中,部分代码如下
select
{% for obj in obj_list %}
option value ="{{ forloop.counter }}"{{ obj }}/option
{% endfor %}
/select
这样,模板就能自动根据传递过来的数据,进行显示。
这样说的已经很详细了,如果还是不懂。自己去django官网看相应版本的文档去吧。
结语:以上就是首席CTO笔记为大家介绍的关于django怎么获取下拉选择框的值的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。