def user_edit(request, nid):
"""编辑用户"""
if request.method == "GET":
row_object = models.UserInfo.objects.filter(id=nid)
row_object = row_object[0]
form = UserModelForm(instance=row_object)
return render(request, 'user_edit.html', {'form': form})
row_object = models.UserInfo.objects.filter(id=nid)[0]
form = UserModelForm(data=request.POST, instance=row_object) # 代表更新这一行数据
if form.is_valid():
form.save()
return redirect('/user/list/')
return render(request, 'user_edit.html', {'form': form})
注意:编辑时,UserModelForm()中传入instance参数代表自动生成编辑值到文本框。

在保存到数据库时,传入instance参数代表更新,而不是新增数据。
<form class="form-horizontal" method="post" novalidate>
{% csrf_token %}
{% for field in form %}
<div class="form-group">
<label>{{field.label}}</label>
{{field}}
<span style="color: red;" >{{field.errors.0}}</span>
<!--<input type="text" class="form-control" placeholder="标题" name="title" />-->
</div>
{% endfor %}
<button type="submit" class="btn btn-primary">提 交</button>
</form>




