Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
3116 Представления

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 :)

Аватар
Отменить
Автор

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

if 'opt_out' in vals:

vals['opt_out'] = True

Related Posts Ответы Просмотры Активность
2
мар. 17
11151
5
февр. 24
24231
0
июл. 18
2698
2
июл. 18
3089
2
нояб. 17
4585