2012-11-16 68 views
0

每當我嘗試更新django powered web上的用戶配置文件時,出現錯誤:「用戶名已存在,請提供另一個用戶配置文件」。我試圖讓它識別經過身份驗證的用戶。儘管其他方面都有效,但在我指定新用戶名之前,它不會更新。用戶名已存在,當想更新django中的用戶配置文件

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)) 

回答

0

您必須排除用戶名字段,當你正在編輯的配置文件。

在你的RegistrationForm這樣的東西。

class RegistrationForm(forms.form): 
    #other code 

    class Meta: 
     exclude = ['username',] 

您可以添加您不希望被列入形式的多個字段名

相關問題