Django - TypeError - save() 出现意外的关键字参数 'force_insert'

10 浏览
0 Comments

Django - TypeError - save() 出现意外的关键字参数 'force_insert'

我在Django中是新手,无法解决这个错误。请帮忙。出现了TypeError - save()得到了一个意外的关键字参数'force_insert'。我测试了下面的代码,它们能够保存新用户的注册信息,但现在无法保存了...

这是我认为出现问题的views.py的部分代码:

    from django.shortcuts import render, redirect
    from django.contrib.auth.forms import UserCreationForm
    from django.contrib import messages
    from django.contrib.auth.decorators import login_required
    from . forms import UserRegisterForm, UserUpdateForm, ProfileUpdateForm
    def register(request):
        if request.method == 'POST':
            form = UserRegisterForm(request.POST)
            if form.is_valid():
            username = form.cleaned_data.get('username')
            form.save(force_insert=False)
            messages.success(request, f'Thank you {username}! Your account has been created!')
            return redirect('login')
    else:
        form = UserRegisterForm()
    return render(request, 'users/register.html', {'form':form})

还有models.py

from django.db import models
from django.contrib.auth.models import User
from PIL import Image
class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    image = models.ImageField(default='profile_pics/default.jpg', upload_to='profile_pics')
    def __str__(self):
        return (self.user)
    def save(self):
        super().save()
        img = Image.open(self.image.path)
        if img.height > 300 or img.width > 300:
            output_size = (300,300)
            img.thumbnail(output_size)
            img.save(self.image.path)'

0