我有一个页面可以将值插入到数据库中。插入后加载另一个页面,其中包含列出数据库值的下拉列表,但插入的值未在下拉列表中列出
问题不在于事务/提交等。以第二种形式检索下拉列表数据的查询是正确的。
表格1(首页)
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.'})
Run Code Online (Sandbox Code Playgroud)
Form2(第二页)
class User(forms.Form):
orgUnitList = getOrgUnitList()
email = forms.EmailField(label=u'Email',
max_length=50,
error_messages={'required':'Email is required field'})
orgUnit = forms.ChoiceField(label=u'Organizational Unit',
choices=orgUnitList,
error_messages={'required':'Organizational unit is required field'})
Run Code Online (Sandbox Code Playgroud)
询问
def getOrgUnitList():
orgUnitList = list(OrganizationUnit.objects.values_list
('OrgUnitID','OrgUnitName').order_by('OrgUnitName'))
return orgUnitList
Run Code Online (Sandbox Code Playgroud)
但是当我尝试绑定视图中的选择时,它正在工作 代码 *视图*
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)
Run Code Online (Sandbox Code Playgroud)
但我无法给出下拉选项,因为我想在 form 中给出选择。我需要 form2 的解决方案
首先,orgList在表单定义中进行评估,这就是选择不会改变的原因。您应该放置getOrgUnitList在表单中__init__(或其他方法中)。
其次,您不向表单传递任何数据,可能是您想要的
form = AddUser(request.POST or None)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1878 次 |
| 最近记录: |