当想要在django中更新userprofile时,用户名已经存在

时间:2012-11-16 16:58:26

标签: django

每当我尝试在django powered web上更新用户配置文件时,我都会收到错误:“用户名已经存在,请提供另一个用户名。”我试图让它识别经过身份验证的用户。虽然其他所有方法都有效,但在指定新用户名之前不会更新。

views.py

@login_required
def editprofile(request):
    registeredmember = request.user.get_profile()
    if request.method == 'POST':
        userprofile_edit = RegistrationForm(request.POST, instance = registeredmember)
        if userprofile_edit.is_valid():
            userprofile_edit.save()
            return HttpResponseRedirect('/profile/')
    else:
        userprofile_edit = RegistrationForm(instance = registeredmember)
    return render_to_response('carloan/editprofile.html', {'userprofile_edit': userprofile_edit}, context_instance=RequestContext(request))

1 个答案:

答案 0 :(得分:0)

在编辑个人资料时,您必须排除用户名字段。

RegistrationForm中的此类内容。

class RegistrationForm(forms.form):
   #other code

   class Meta:
       exclude = ['username',]

您可以添加多个不希望包含在表单

中的字段名称