Django表单缓存或重载问题

Django表单缓存或重载问题,第1张

概述我有一个页面向db插入值. 插入后加载另一个页面,下拉列出了db值 但插入的值未在下拉列表中列出 问题不在于事务/提交等.以第二种形式检索下拉数据的查询是正确的. Form1(第一页) class Organization(forms.Form): orgList = getOrgUnitList() orgUnit = forms.CharField(label 我有一个页面向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)
总结

以上是内存溢出为你收集整理的Django表单缓存重载问题全部内容,希望文章能够帮你解决Django表单缓存或重载问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1196549.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存