0

django を利用した Web でユーザー プロファイルを更新しようとすると、「ユーザー名は既に存在します。別のユーザー名を指定してください」というエラーが表示されます。認証されたユーザーを認識させようとしています。他のすべての機能は機能しますが、新しいユーザー名を指定するまで更新されません。

ビュー.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))
4

1 に答える 1

0

プロファイルを編集するときは、ユーザー名フィールドを除外する必要があります。

あなたのRegistrationForm.

class RegistrationForm(forms.form):
   #other code

   class Meta:
       exclude = ['username',]

フォームに含めたくない複数のフィールド名を追加できます

于 2012-11-16T17:49:48.957 に答える