diff options
| -rw-r--r-- | ishtar_common/models.py | 9 | ||||
| -rw-r--r-- | ishtar_common/tests.py | 7 | 
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): | 
