Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.db import models
- from django.contrib.auth.models import User
- from django.db.models.signals import post_save
- from django.dispatch import receiver
- class Profile(models.Model):
- profile_ID = models.IntegerField(primary_key=True)
- user = models.OneToOneField(User, on_delete=models.CASCADE)
- avatar = models.ImageField(upload_to='img/', default='img/none/default-avatar.png')
- def updateUserProfile(sender, instance, created, **kwargs):
- if created:
- Profile.objects.create(user=instance)
- instance.profile.save()
- post_save.connect(updateUserProfile, dispatch_uid="app_models_updateUserProfile")
- from django.shortcuts import render, redirect
- from django.views import View
- from django.contrib.auth import login, authenticate
- from django.contrib.auth.forms import UserCreationForm
- from .models import Profile
- # Create your views here.
- class SignUpView(View):
- templateName = 'auth/signup.html'
- def get(self, request, *arg, **kwargs):
- form = UserCreationForm()
- return render(request, self.templateName, {'form': form})
- def post(self, request, *arg, **kwargs):
- form = UserCreationForm(request.POST, request.user)
- if form.is_valid():
- user = form.save()
- username = form.cleaned_data.get('username')
- raw_password = form.cleaned_data.get('password1')
- user = authenticate(username=username, password=raw_password)
- login(request, user)
- return redirect('/')
- return render(request, self.templateName, {'form': form})
- post_save.connect(updateUserProfile, dispatch_uid="app_models_updateUserProfile")
- post_save.connect(updateUserProfile, sender=User, ...)
Add Comment
Please, Sign In to add comment