решено
Я получаю эту ошибку при попытке зарегистрировать нового пользователя.
Traceback:
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/exception.py" in inner
41. response = get_response(request)
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in _get_response
187. response = self.process_exception_by_middleware(e, request)
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in _get_response
185. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py" in view
68. return self.dispatch(request, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py" in dispatch
88. return handler(request, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/views/generic/edit.py" in post
183. return self.form_valid(form)
File "/home/django/django_project/accounts/views.py" in form_valid
34. new_user = User.objects.create(username=username, email=email)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py" in manager_method
85. return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py" in create
394. obj.save(force_insert=True, using=self.db)
File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/base_user.py" in save
80. super(AbstractBaseUser, self).save(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py" in save
808. force_update=force_update, update_fields=update_fields)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py" in save_base
848. update_fields=update_fields, raw=raw, using=using,
File "/usr/local/lib/python2.7/dist-packages/django/dispatch/dispatcher.py" in send
193. for receiver in self._live_receivers(sender)
File "/home/django/django_project/accounts/models.py" in post_save_user_receiver
150. new_profile = UserProfile.objects.get_or_create(user=instance)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py" in manager_method
85. return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py" in get_or_create
466. return self._create_object_from_params(lookup, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py" in _create_object_from_params
500. obj = self.create(**params)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py" in create
394. obj.save(force_insert=True, using=self.db)
Exception Type: TypeError at /register/
Exception Value: save() got an unexpected keyword argument 'force_insert'
Я добавил форму для пользователязагрузить картинку профиля, и это сработало, но теперь я получаю эту ошибку
accounts / models.py
class UserProfile(models.Model):
....
def save(self):
super(UserProfile,self).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)
def post_save_user_receiver(sender, instance, created, *args, **kwargs):
if created:
new_profile = UserProfile.objects.get_or_create(user=instance)
if UserProfile.stripe_customer_id is None or UserProfile.stripe_customer_id == '':
new_customer_id = stripe.Customer.create(email=instance.email)
free_membership = Membership.objects.get(membership_type='Free')
UserProfile.stripe_customer_id = new_customer_id['id']
UserProfile.membership = free_membership
UserProfile.save()
post_save.connect(post_save_user_receiver, sender=settings.AUTH_USER_MODEL)
account views.py
class UserRegisterView(FormView):
template_name = 'accounts/user_register_form.html'
form_class = UserRegisterForm
success_url = '/login'
def form_valid(self, form):
username = form.cleaned_data.get("username")
email = form.cleaned_data.get("email")
password = form.cleaned_data.get("password")
new_user = User.objects.create(username=username, email=email)
new_user.set_password(password)
new_user.save()
messages.info(self.request, 'Welcome')
return super(UserRegisterView, self).form_valid(form)
def profile_view(request):
if request.method == 'POST':
p_form = ProfileUpdateForm(request.POST, request.FILES, instance=request.user.profile)
if p_form.is_valid():
p_form.save()
messages.info(request, 'Saved')
return redirect('/')
else:
p_form = ProfileUpdateForm() #instance=request.user.profile
context = {
'p_form' : p_form,
}
return render(request,'accounts/userprofile.html',context)
Ошибка типа: save () получила неожиданный аргумент ключевого слова 'force_insert Ошибка типа: save () получила неожиданный аргумент ключевого слова' force_insert
Спасибо за любую помощь!