Sending email taking data FK Django

0

I have group and profile, in my register the person chooses the group and this group has the responsavel_id, I want to pick up and send a confirmation email to the person in charge of that group that the user chose

models.py

class Grupo(models.Model):

    grupo = models.CharField(max_length=255)
    divisao = models.ForeignKey(Divisao)
    responsavel = models.ForeignKey(User)

    @property
    def get_responsavel(self):
        return self.responsavel

    def __unicode__(self):
        return self.grupo


class Perfil(User):
    telefone = models.CharField(max_length=255)
    ramal = models.CharField(max_length=255)
    data_inicio = models.DateField(default=datetime.now, blank=True)
    data_fim = models.DateField(null=True, blank=True)
    e_responsavel = models.BooleanField(default=False)
    vinculo = models.ForeignKey(Vinculo)
    grupos = models.ForeignKey(Grupo)
    divisao = models.ForeignKey(Divisao) 

views.py

def cadastro(request):
        if request.method == 'POST':
            form = UserForm(request.POST)
            formulario = form.save()

        if form.is_valid():
            formulario.set_password(form.cleaned_data['password'])
            formulario.save()

            def email(responsavel_id):
                # Envio de email
                current_site = get_current_site(request)
                message = render_to_string('acc_active_email.html', {
                    'user': formulario,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(formulario.pk)),
                    'token': account_activation_token.make_token(formulario),
                })
                mail_subject = 'Novo usuario no sistema'
                group = Grupo.objects.get(pk=responsavel_id)
                responsavel = group.get_responsavel()
                print ("ss")
                responsavel.email
                to_email = responsavel.email
                email = EmailMessage(mail_subject, message, to=[to_email])
                email.send()

            return HttpResponseRedirect('/cadastro/login/')

    else:
        form = UserForm()


    return render(request, 'cadastro.html', {
        'form': form,

    })
    
asked by anonymous 20.09.2017 / 14:47

0 answers