moedelform 编辑时候重复字段文字怎么处理 需要排除自己

点击查看代码
def hostmem_edit(request,mem_name):
"""主机组编辑"""
row_obj = HostMem.objects.filter(mem_name=mem_name).first()
if not row_obj:
return redirect('/hostmem/list/')
if request.method == "POST":
form = ModelForm.HostMemEditModelForm(instance=row_obj, data=request.POST)
if form.is_valid():
###排除编辑的自己
mem_name_post=request.POST.get('mem_name',None)
#在post数据中获取组名在原来的数据里面查询是否存在
#存在就不能改名 否则可以修改
exsits = HostMem.objects.filter(mem_name=mem_name_post).first()
if exsits:
form.add_error('mem_name', '修改之后的组已经存在,请修改其他组名')
return render(request, 'hostmem_edit.html', {"form": form})
form.save()
return redirect('/hostmem/list/')
##数据不合法
return render(request, 'hostmem_edit.html', {"form": form})
###get请求
form = ModelForm.HostMemEditModelForm(instance=row_obj)
return render(request, 'hostmem_edit.html', {"form": form})

只能为空否则无法修改

浙公网安备 33010602011771号