Django表单缓存或重载问题
发布时间:2020-12-20 13:25:39 所属栏目:Python 来源:网络整理
导读:我有一个页面向db插入值. 插入后加载另一个页面,下拉列出了db值 但插入的值未在下拉列表中列出 问题不在于事务/提交等.以第二种形式检索下拉数据的查询是正确的. Form1(第一页) class Organization(forms.Form): orgList = getOrgUnitList() orgUnit = forms
|
我有一个页面向db插入值.
插入后加载另一个页面,下拉列出了db值 但插入的值未在下拉列表中列出 问题不在于事务/提交等.以第二种形式检索下拉数据的查询是正确的. Form1(第一页) class Organization(forms.Form):
orgList = getOrgUnitList()
orgUnit = forms.CharField(label=u'Organization Name',max_length=50,error_messages={'required':'Organization name is required field.'})
parentOrg= forms.ChoiceField(label=u'Parent Organization',choices=[(u'Select',u'Select')]+orgList,error_messages={'required':'Organization name is required field.'})
Form2(第二页) class User(forms.Form):
orgUnitList = getOrgUnitList()
email = forms.EmailField(label=u'Email',error_messages={'required':'Email is required field'})
orgUnit = forms.ChoiceField(label=u'Organizational Unit',choices=orgUnitList,error_messages={'required':'Organizational unit is required field'})
询问 def getOrgUnitList():
orgUnitList = list(OrganizationUnit.objects.values_list
('OrgUnitID','OrgUnitName').order_by('OrgUnitName'))
return orgUnitList
但当我试图绑定视图中的选择它是有效的 def user()
template = get_template('AddUser.html')
form = AddUser()
orgUnitList = getOrgUnitList()
del objAdminUIDA
form.fields['orgUnit'].widget.choices=orgUnitList
variables = RequestContext(request,{'form':form})
output = template.render(variables)
del form
return HttpResponse(output)
但我无法给出下拉选项,我希望在form.i需要一个解决方案 解决方法
首先,orgList在表单定义中进行评估,这就是选择不会改变的原因.您应该将getOrgUnitList放在表单的__init__中(或者在其他方法中).
其次,你没有将任何数据传递给表单,可能是你想要的 form = AddUser(request.POST or None) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
