편집 기록

편집 기록
  • 프로필 정토드님의 편집
    날짜2016.06.02

    회원정보 수정 form을 사용하는데 UNIQUE constraint failed: auth_user.username라는 에러가 발생합니다.


    저장된 데이터를 바꾸려고합니다. 회원가입 모델은 Register이고 이 안에 있는 회원 정보 데이터를 수정할려고합니다. 지금현제 UNIQUE constraint failed: auth_user.username 에러라고 나옵니다. 이렇게 회원정보 수정할수 있을까요?

    class UserUpdateForm(forms.ModelForm):
         class Meta:
                model = User
                fields = ( "email", "password1", "password2", "company", "office", )
    
         def clean(self):
                if 'password1' in self.cleaned_data and 'password2' in self.cleaned_data:
                    if self.cleaned_data['password1'] != self.cleaned_data['password2']:
                        raise forms.ValidationError(_("비밀번호가 일치하지 않습니다."))
                return self.cleaned_data
    
          def save(self, commit=True):
                UserUpdate = super(UserUpdateForm, self).save(commit=False)
                UserUpdate.set_password=self.cleaned_data['password1']
                UserUpdate.company = self.cleaned_data['company']
                UserUpdate.office = self.cleaned_data['office'
    
    
    def signup(request):  # 회원정보수정
        if request.method == 'POST':
            user_profile = UserUpdateForm(request.POST)
            if user_profile.is_valid():
                user=user_profile.save(commit=False)
                user.username=request.user
                user.save()
                return render(request, 'as/main.html')
        else :
            user_profile = Register.objects.get(user=request.user)
            user_profile = UserUpdateForm(instance=user_profile)
        return render(request, 'registration/singup.html', {'form': user_profile})
    
  • 프로필 알 수 없는 사용자님의 편집
    날짜2016.06.02

    회원정보 수정 질문입니다.


    저장된 데이터를 바꾸려고합니다. 회원가입 모델은 Register이고 이 안에 있는 회원 정보 데이터를 수정할려고합니다. 지금현제 UNIQUE constraint failed: auth_user.username 에러라고 나옵니다. 이렇게 회원정보 수정할수 있을까요?

    class UserUpdateForm(forms.ModelForm):
         class Meta:
                model = User
                fields = ( "email", "password1", "password2", "company", "office", )
    
         def clean(self):
                if 'password1' in self.cleaned_data and 'password2' in self.cleaned_data:
                    if self.cleaned_data['password1'] != self.cleaned_data['password2']:
                        raise forms.ValidationError(_("비밀번호가 일치하지 않습니다."))
                return self.cleaned_data
    
          def save(self, commit=True):
                UserUpdate = super(UserUpdateForm, self).save(commit=False)
                UserUpdate.set_password=self.cleaned_data['password1']
                UserUpdate.company = self.cleaned_data['company']
                UserUpdate.office = self.cleaned_data['office'
    
    
    def signup(request):  # 회원정보수정
        if request.method == 'POST':
            user_profile = UserUpdateForm(request.POST)
            if user_profile.is_valid():
                user=user_profile.save(commit=False)
                user.username=request.user
                user.save()
                return render(request, 'as/main.html')
        else :
            user_profile = Register.objects.get(user=request.user)
            user_profile = UserUpdateForm(instance=user_profile)
        return render(request, 'registration/singup.html', {'form': user_profile})