您好,我有UserSettings和用戶作爲使用ProfilePicture的可能性。問題是用戶不能更改他的任何配置文件設置。因爲我得到錯誤Unique Constraint failed
或(這就是我現在得到)'int' object has no attribute '_committed'
更改用戶配置文件
我認爲問題是在視圖中,但我不知道如何改變它。
我的模型:
class UserSettings(models.Model):
profileimage = models.ImageField(verbose_name=_(u"Change Your Profilepicture"),upload_to=upload_location,
default=1,
blank=True,
)
Info = models.CharField(verbose_name=_(u"Tell us about yourself"),max_length=500,default="I'm a Human")
status =
City = models.CharField(verbose_name=_(u"Where are you from"),max_length=500,default='Earth')
user = models.OneToOneField(User, default=1)
objects = models.Manager()
class Meta:
ordering =['-user']
def __unicode__(self):
return self.user.username
筆者認爲:
@login_required
def userprofiletwo(request):
user = request.user
form = UserSettingsForm(request.POST or None, request.FILES or None)
if form.is_valid():
user = request.user
form.save()
messages.success(request, 'Your personal Settings are Updated')
return redirect('userprofiletwo')
context = {
'form':form,
}
return render(request, 'userprofile/userprofiletwo.html', context)
我試圖改變對模型FeoreignKey或多對多的OnetoOne場,但本作的,而不是來代替舊信息的新的UserProfiles新的信息。
謝謝你的建議。
請在您的問題中檢查您的縮進,在您的代碼中。而且這是什麼:'status ='你怎麼沒有語法錯誤?並請確保錯誤的正確位置或錯誤轉儲的副本。 –
必須閱讀:https://www.python.org/dev/peps/pep-0008/ – allcaps