summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar_common/models.py9
-rw-r--r--ishtar_common/tests.py7
2 files changed, 11 insertions, 5 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 24704dd21..53f0871f5 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -2748,11 +2748,10 @@ class Person(Address, Merge, OwnPerms, ValueGetter):
def save(self, *args, **kwargs):
super(Person, self).save(*args, **kwargs)
- if not self.raw_name:
- self.raw_name = get_external_id(
- 'person_raw_name', self)
- if self.raw_name:
- self.save()
+ raw_name = get_external_id('person_raw_name', self)
+ if raw_name and self.raw_name != raw_name:
+ self.raw_name = raw_name
+ self.save()
if hasattr(self, 'responsible_town_planning_service'):
for fle in self.responsible_town_planning_service.all():
fle.save() # force update of raw_town_planning_service
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py
index a9e92e1f2..095056c2e 100644
--- a/ishtar_common/tests.py
+++ b/ishtar_common/tests.py
@@ -954,6 +954,13 @@ class IshtarBasicTest(TestCase):
response = self.client.get(reverse('status'))
self.assertEqual(response.status_code, 200)
+ def test_person_rawname(self):
+ person = models.Person.objects.create(name="Weasley", surname="Bill")
+ self.assertEqual(person.raw_name, "WEASLEY Bill")
+ person.surname = "George"
+ person.save()
+ self.assertEqual(person.raw_name, "WEASLEY George")
+
class GeomaticTest(TestCase):
def test_post_save_point(self):