Pular para o conteúdo
Menu
Esta pergunta foi sinalizada
3148 Visualizações

My module should prevent mass mailing to send email to users that don't comply in the GDPR settings. I created a constrain on res.partner that prevents to set opt_out to be set to True. Now the problem becomes that it prevents users to signup on the website portal because it wants to set opt_out to False.

@api.constrains('opt_out')
def _check_gdpr(self):
    if not self.email_notifications:
        if not self.opt_out:
            raise ValidationError('ERROR: Can't set "Mailing Opt-Out" because GDPR')

Does anyone have any idea how to keep the constrain but ignore it on create? Or does anyone have any better but simple solution?

I tried with setting opt_out to True in the constrain but I just got a maximum recursion error because the constrain was calling the constrain :)

Avatar
Cancelar
Autor

can be closed... overrided create for res partner with

if 'opt_out' in vals:

vals['opt_out'] = True

Publicações relacionadas Respostas Visualizações Atividade
2
mar. 17
11167
5
fev. 24
24252
0
jul. 18
2721
2
jul. 18
3108
2
nov. 17
4621