Hi, Ismail Did you try:
*instance.user.email*? I hope it should be what you need. Regards, Constantine C. On Mon, May 15, 2017 at 3:47 PM, Ismail Sarenkapic <[email protected]> wrote: > from django.conf import settings > from django.contrib.auth.models import ( > BaseUserManager, AbstractBaseUser > ) > from django.contrib import messages > from django.core.mail import send_mail > from django.conf import settings > from django.core.validators import RegexValidator > from django.db import models > from django.db.models.signals import post_save > # Create your models here. > from .utils import code_generator > > USERNAME_REGEX = '^[a-zA-Z0-9.+-]*$' > > class MyUserManager(BaseUserManager): > def create_user(self, username, email, password=None): > """ > Creates and saves a User with the given email, date of > birth and password. > """ > if not email: > raise ValueError('Users must have an email address') > > user = self.model( > username = username, > email=self.normalize_email(email), > ) > > user.set_password(password) > user.save(using=self._db) > return user > > def create_superuser(self, username, email, password): > """ > Creates and saves a superuser with the given email, date of > birth and password. > """ > user = self.create_user( > username, > email, > password=password, > ) > user.is_admin = True > user.is_staff = True > user.save(using=self._db) > return user > > > def get_email_field_name(self, email): > email_string = str(self.email) > return email_string > > class MyUser(AbstractBaseUser): > username = models.CharField( > max_length=255, > validators=[ > RegexValidator( > regex = USERNAME_REGEX, > message = 'Username must be Alpahnumeric or contain > any of the following: ". @ + -" ', > code='invalid_username' > )], > unique=True, > ) > email = models.EmailField( > verbose_name='email address', > max_length=255, > unique=True, > ) > zipcode = models.CharField(max_length=120, default="92660") > is_active = models.BooleanField(default=True) > is_staff = models.BooleanField(default=False) > is_admin = models.BooleanField(default=False) > > objects = MyUserManager() > > USERNAME_FIELD = 'username' > REQUIRED_FIELDS = ['email'] > > def get_full_name(self): > # The user is identified by their email address > return self.email > > def get_short_name(self): > # The user is identified by their email address > return self.email > > def __str__(self): # __unicode__ on Python 2 > return self.email > > def has_perm(self, perm, obj=None): > "Does the user have a specific permission?" > # Simplest possible answer: Yes, always > return True > > def has_module_perms(self, app_label): > "Does the user have permissions to view the app `app_label`?" > # Simplest possible answer: Yes, always > return True > > > > # @property > # def is_staff(self): > # "Is the user a member of staff?" > # # Simplest possible answer: All admins are staff > # return self.is_admin > > > > class ActivationProfile(models.Model): > user = models.ForeignKey(settings.AUTH_USER_MODEL) > key = models.CharField(max_length=120) > expired = models.BooleanField(default=False) > > def save(self, *args, **kwargs): > self.key = code_generator() > super(ActivationProfile, self).save(*args, **kwargs) > > > def post_save_activation_receiver(sender, instance, created, *args, **kwargs): > if created: > #send email > subject = 'Registration' > message = "http://127.0.0.1:8000/activate/{0}".format(instance.key) > from_email = settings.EMAIL_HOST_USER > recipient_list = ['UserEmail'] > print(recipient_list) > > send_mail(subject, message, from_email, > recipient_list,fail_silently=True) > > post_save.connect(post_save_activation_receiver, sender=ActivationProfile) > > > > > class Profile(models.Model): > user = models.OneToOneField(settings.AUTH_USER_MODEL) > city = models.CharField(max_length=120, null=True, blank=True) > > def __str__(self): > return str(self.user.username) > > def __unicode__(self): > return str(self.user.username) > > > def post_save_user_model_receiver(sender, instance, created, *args, **kwargs): > if created: > try: > Profile.objects.create(user=instance) > ActivationProfile.objects.create(user=instance) > except: > pass > > post_save.connect(post_save_user_model_receiver,sender=settings. > AUTH_USER_MODEL) > > Hi!I'm trying to make user authentication system, everything is working > fine except this email part in my signal: > The question is how do I set this reception_list to be email that user is > going to enter.I don't know how to refer to email field value(because it is > other model) ,in this case with is signal. > > def post_save_activation_receiver(sender, instance, created, *args, **kwargs): > if created: > #send email > subject = 'Registration' > message = "http://127.0.0.1:8000/activate/{0}".format(instance.key) > from_email = settings.EMAIL_HOST_USER > recipient_list = ['UserEmail'] > print(recipient_list) > > send_mail(subject, message, from_email, > recipient_list,fail_silently=True) > > post_save.connect(post_save_activation_receiver, sender=ActivationProfile) > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/django-users. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/django-users/7ff66609-dce4-4ea9-a807-93e37a2ab837%40googlegroups.com > <https://groups.google.com/d/msgid/django-users/7ff66609-dce4-4ea9-a807-93e37a2ab837%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Sincerely yours, Constantine C -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAK52boVqjwdrv2CsqHh7CtRj0ow%3DcmNmXy%2B9KrTyk1aiD8UEBA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.

