Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django IntegrityError:重复的键值违反了唯一约束;登录“用户帐户”用户档案“用户id”密钥;_Django_Django Models_Django Forms_Django Views - Fatal编程技术网

Django IntegrityError:重复的键值违反了唯一约束;登录“用户帐户”用户档案“用户id”密钥;

Django IntegrityError:重复的键值违反了唯一约束;登录“用户帐户”用户档案“用户id”密钥;,django,django-models,django-forms,django-views,Django,Django Models,Django Forms,Django Views,当用户上传配置文件pic时,IntegrityError出现在form.save()上,它给出了错误,下面是代码(“`”它在最后一行用于形式化) models.py forms.py view.py 您可能应该尝试以下方法: user = UserProfile(user=request.user) form = ProfilePicForm(request.POST, request.FILES, instance=user) if form.is_valid(): form.save

当用户上传配置文件pic时,IntegrityError出现在
form.save()
上,它给出了错误,下面是代码(“`”它在最后一行用于形式化)

models.py forms.py view.py
您可能应该尝试以下方法:

user = UserProfile(user=request.user)
form = ProfilePicForm(request.POST, request.FILES, instance=user)
if form.is_valid():
    form.save()

是的,谢谢,它解决了这个错误,但是现在它在
表单中给出了一个不同的错误“Keyerror
Keyerror at/login/profile\u pic/u'password'
。\u有效吗()
我相信你没有用户登录的登录页?你在某个地方试图访问字典中的
password
class ProfilePicForm(ModelForm):
    class Meta:
        model = UserProfile
        fields = ("image",)`
def profile_pic(request):
    if request.method =="POST":
        form = ProfilePicForm(request.POST, request.FILES)
        if form.is_valid():
            form.instance.user =request.user
            form.save()
            return redirect('/login/profile')
    else:
        args = {'form': ProfilePicForm()}
        return render(request, 'login_account/profile_pic.html',args)`
user = UserProfile(user=request.user)
form = ProfilePicForm(request.POST, request.FILES, instance=user)
if form.is_valid():
    form.save()