diff options
| -rw-r--r-- | archaeological_operations/models.py | 10 | ||||
| -rw-r--r-- | archaeological_operations/tests.py | 4 | 
2 files changed, 12 insertions, 2 deletions
| diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index 51f67d723..a11931c62 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -714,7 +714,6 @@ class Parcel(LightHistorizedItem):                                            for nb in grouped[-1].parcel_numbers]          return grouped -      @classmethod      def render_parcels(cls, parcels):          parcels = cls.grouped_parcels(parcels) @@ -745,9 +744,16 @@ class Parcel(LightHistorizedItem):          return settings.JOINT.join(items)  def parcel_post_save(sender, **kwargs): -    if not kwargs['instance'] or not FILES_AVAILABLE: +    if not kwargs['instance']:          return      parcel = kwargs['instance'] +    if parcel.operation and parcel.town not in parcel.operation.towns.all(): +        parcel.operation.towns.add(parcel.town) +    elif FILES_AVAILABLE and parcel.associated_file and \ +       parcel.town not in parcel.associated_file.towns.all(): +        parcel.associated_file.towns.add(parcel.town) +    if not FILES_AVAILABLE: +        return      if parcel.operation and parcel.associated_file:          return      if parcel.operation and parcel.operation.associated_file: diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py index 2ec79279e..c7e75da1b 100644 --- a/archaeological_operations/tests.py +++ b/archaeological_operations/tests.py @@ -156,6 +156,10 @@ class ImportOperationTest(TestCase):                           sorted([p.parcel_number for p in last_parcels]))          self.assertEqual(sections,                           sorted([p.section for p in last_parcels])) +        last_ope = models.Operation.objects.order_by('-pk').all()[0] +        towns_ope = last_ope.towns.all() +        for p in last_parcels: +            self.assertTrue(p.town in towns_ope)      def testParseParcels(self): | 
