diff options
| author | Raphael Collet <rco@odoo.com> | 2019-02-14 14:37:48 +0000 |
|---|---|---|
| committer | Xavier Morel <xmo@odoo.com> | 2020-04-07 09:25:08 +0000 |
| commit | 1b1b2142f163e323e2d73bec6b380272a9c42998 (patch) | |
| tree | 1bded85eb3e004978ae58129cf76963d3ecf754f /addons/mail/models | |
| parent | 00c82d3121bc28c4902f8f084d2bb2807350c560 (diff) | |
[IMP] fields: add validation of parameter names
Diffstat (limited to 'addons/mail/models')
| -rw-r--r-- | addons/mail/models/ir_model.py | 11 | ||||
| -rw-r--r-- | addons/mail/models/mail_thread.py | 4 |
2 files changed, 15 insertions, 0 deletions
diff --git a/addons/mail/models/ir_model.py b/addons/mail/models/ir_model.py index 8d3cc258069..9b7589318e6 100644 --- a/addons/mail/models/ir_model.py +++ b/addons/mail/models/ir_model.py @@ -5,6 +5,17 @@ from odoo import _, api, fields, models from odoo.exceptions import UserError +class Base(models.AbstractModel): + _inherit = 'base' + + def _valid_field_parameter(self, field, name): + # allow tracking on abstract models; see also 'mail.thread' + return ( + name == 'tracking' and self._abstract + or super()._valid_field_parameter(field, name) + ) + + class IrModel(models.Model): _inherit = 'ir.model' _order = 'is_mail_thread DESC, name ASC' diff --git a/addons/mail/models/mail_thread.py b/addons/mail/models/mail_thread.py index 8b639ae5207..75ed62c8a8e 100644 --- a/addons/mail/models/mail_thread.py +++ b/addons/mail/models/mail_thread.py @@ -112,6 +112,10 @@ class MailThread(models.AbstractModel): message_attachment_count = fields.Integer('Attachment Count', compute='_compute_message_attachment_count', groups="base.group_user") message_main_attachment_id = fields.Many2one(string="Main Attachment", comodel_name='ir.attachment', index=True, copy=False) + def _valid_field_parameter(self, field, name): + # allow tracking on models inheriting from 'mail.thread' + return name == 'tracking' or super()._valid_field_parameter(field, name) + @api.depends('message_follower_ids') def _get_followers(self): for thread in self: |
