我想用初始数据填充表单字段,因此我设置了我的视图,就像this question中@ars所建议的那样:
def update_member(request):
if request.method == 'POST':
urn = 'urn:publicid:myurn'
member = Member(urn=urn)
retrieved_members = member.search_member(filter_params=['urn', 'first_name', 'last_name'])
# If search returns member
if retrieved_members != []:
member = retrieved_members[0]
member_attributes = {'first_name': member.first_name, 'last_name': member.last_name}
form = UpdateMemberForm(initial=member_attributes)
它运作正常。但是当我手动填写模板中的字段时,我的视图仍然会设置这些初始值。我无法将值重置为通过POST方法传递的值。我知道这是因为我设置初始值的方式,但我不知道如何解决它。
有没有人知道如何解决这个问题?
答案 0 :(得分:1)
如果检查提交的值的POST数据,则可以在调用UpdateMemberForm()之前使用这些值更新member_attributes