Merge pull request !11917 from 李鹏宇/dev
This commit is contained in:
李鹏宇
2026-06-05 07:07:54 +00:00
committed by Gitee
@@ -225,6 +225,34 @@ class AiReportTemplate(models.Model):
if self.model_id:
self.model_name = self.model_id.model
@api.onchange('field_ids')
def _onchange_field_ids(self):
if self.field_ids:
self.field_list = json.dumps([f.name for f in self.field_ids], ensure_ascii=False)
self.field_labels = json.dumps(
{f.name: f.field_description for f in self.field_ids},
ensure_ascii=False
)
# ===== create / write =====
@api.model_create_multi
def create(self, vals_list):
for vals in vals_list:
if vals.get('model_id') and not vals.get('model_name'):
model = self.env['ir.model'].browse(vals['model_id'])
vals['model_name'] = model.model
if vals.get('field_ids'):
self._sync_field_list_from_ids(vals)
return super().create(vals_list)
def write(self, vals):
if vals.get('model_id') and 'model_name' not in vals:
model = self.env['ir.model'].browse(vals['model_id'])
vals['model_name'] = model.model
if vals.get('field_ids'):
self._sync_field_list_from_ids(vals)
return super().write(vals)
@api.model
def _sync_field_list_from_ids(self, vals):
import json