diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/models.py | 6 | ||||
-rw-r--r-- | ishtar_common/tests.py | 10 | ||||
-rw-r--r-- | ishtar_common/version.py | 4 |
3 files changed, 15 insertions, 5 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 6b4959496..d2a476640 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -2726,8 +2726,8 @@ class Person(Address, Merge, OwnPerms, ValueGetter, MainItem): def _generate_cached_label(self): lbl = get_generated_id("person_raw_name", self) - if not lbl: - return "-" + if not lbl.strip(): + return self.raw_name or "-" if self.attached_to: attached_to = str(self.attached_to) lbl += " ({})".format(attached_to) @@ -2897,7 +2897,7 @@ class Person(Address, Merge, OwnPerms, ValueGetter, MainItem): def save(self, *args, **kwargs): super(Person, self).save(*args, **kwargs) raw_name = get_generated_id("person_raw_name", self) - if raw_name and self.raw_name != raw_name: + if raw_name.strip() and self.raw_name != raw_name: self.raw_name = raw_name self.save() if hasattr(self, "responsible_town_planning_service"): diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index 8ef083c9f..bd37226ff 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -2639,10 +2639,20 @@ class IshtarBasicTest(TestCase): def test_person_rawname(self): person = models.Person.objects.create(name="Weasley", surname="Bill") + person = models.Person.objects.get(pk=person.pk) self.assertEqual(person.raw_name, "WEASLEY Bill") + self.assertEqual(person.cached_label, "WEASLEY Bill") person.surname = "George" person.save() + person = models.Person.objects.get(pk=person.pk) self.assertEqual(person.raw_name, "WEASLEY George") + self.assertEqual(person.cached_label, "WEASLEY George") + # do not delete raw_name when no name, surname is available + person.name, person.surname, person.raw_name = "", "", "POTTER Harry" + person.save() + person = models.Person.objects.get(pk=person.pk) + self.assertEqual(person.raw_name, "POTTER Harry") + self.assertEqual(person.cached_label, "POTTER Harry") def test_show(self): person = models.Person.objects.create(name="Weasley", surname="Bill") diff --git a/ishtar_common/version.py b/ishtar_common/version.py index 511f161d2..c4eff2b4c 100644 --- a/ishtar_common/version.py +++ b/ishtar_common/version.py @@ -1,5 +1,5 @@ -# 3.1.62 -VERSION = (3, 1, 62) +# 3.1.64 +VERSION = (3, 1, 64) def get_version(): |