From 2050f54fd4b3dce942294bc0b1b82001ee678aac Mon Sep 17 00:00:00 2001 From: Stefan Rijnhart Date: Thu, 30 Dec 2021 17:03:56 +0100 Subject: [PATCH] [FIX] base_changeset: models may not have a `name` field Fixes ``` bank.changeset_ids.name_get() *** AttributeError: 'res.partner.bank' object has no attribute 'name' ``` --- base_changeset/models/record_changeset.py | 2 +- base_changeset/tests/test_changeset_flow.py | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/base_changeset/models/record_changeset.py b/base_changeset/models/record_changeset.py index 9de40f5b1..673364879 100644 --- a/base_changeset/models/record_changeset.py +++ b/base_changeset/models/record_changeset.py @@ -67,7 +67,7 @@ class RecordChangeset(models.Model): def name_get(self): result = [] for changeset in self: - name = "{} ({})".format(changeset.date, changeset.record_id.name) + name = "{} ({})".format(changeset.date, changeset.record_id.display_name) result.append((changeset.id, name)) return result diff --git a/base_changeset/tests/test_changeset_flow.py b/base_changeset/tests/test_changeset_flow.py index 7b86193c0..f8f34d503 100644 --- a/base_changeset/tests/test_changeset_flow.py +++ b/base_changeset/tests/test_changeset_flow.py @@ -331,3 +331,18 @@ class TestChangesetFlow(ChangesetTestCommon, TransactionCase): self.partner._compute_changeset_ids() changeset = self.partner.changeset_ids self.assertEqual(changeset.source, company) + + def test_name_get(self): + """Test the name_get of a changeset for a model without name field""" + self.env["changeset.field.rule"].create( + { + "field_id": self.env.ref("base.field_res_partner_bank__active").id, + "action": "validate", + } + ) + bank = self.env.ref("base.bank_partner_demo").with_context( + test_record_changeset=True + ) + bank.active = False + self.assertTrue(bank.changeset_ids) + self.assertIn(bank.acc_number, bank.changeset_ids.name_get()[0][1])