diff options
Diffstat (limited to 'archaeological_operations/views.py')
| -rw-r--r-- | archaeological_operations/views.py | 42 | 
1 files changed, 17 insertions, 25 deletions
| diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 8c2357bb9..15fe0fce8 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -443,23 +443,13 @@ def operation_modify_parcels(request, pk):          new_data = {k: new_data[k][0] for k in new_data} # convert POST to classic dict          new_data.update(data)          formset = formset_class(new_data) #, prefix="modified_parcel" -        new_parcel_formset = formset_class(new_data) #, prefix="new_parcel +        #  new_parcel_formset = formset_class(new_data) #, prefix="new_parcel          for form in formset: #DEBUG              print(form.errors) #DEBUG -        if formset.is_valid() and new_parcel_formset.is_valid(): +        if formset.is_valid():              print(formset.cleaned_data) #DEBUG              post_data = [form.cleaned_data for form in formset] -            post_data_new = [form.cleaned_data for form in new_parcel_formset] - -            for new_data in post_data_new: -                parcel_to_add = models.Parcel.objects.create( -                    year = new_data.get("year"), -                    section = new_data.get("section"), -                    parcel_number = new_data.get("parcel_number"), -                    town = new_data.get("town") -                ) -                operation.parcels.add(parcel_to_add)              for data in post_data:                  print(data) @@ -472,25 +462,26 @@ def operation_modify_parcels(request, pk):                          if key == "DELETE" and value == True:                              parcel_associated_by_context_record = models.ContextRecord.objects.filter(parcel=current_parcel.pk).all()                              if len(parcel_associated_by_context_record) > 0: -                                raise ValidationError("This parcel is associated with a context record. It can't be deleted.")  +                                raise ValidationError("This parcel is associated with a context record. It can't be deleted.")                              else: -                                current_parcel.delete() +                                current_parcel.delete() # Need to delete parcel or just the relation ? +                                # operation.parcels.delete(current_parcel) # Is this work ?                              not_deleted_or_associated = False                      if not_deleted_or_associated:                          current_parcel.year = data.get("year")                          current_parcel.section = data.get("section")                          current_parcel.parcel_number = data.get("parcel_number") -                        current_parcel.town = data.get("town") +                        current_parcel.town = models.Town.objects.get(pk=int(data.get("town")))                          current_parcel.save() -                #  else: -                #      parcel_to_add = models.Parcel.objects.create( -                #          year = post_data.get("year"), -                #          section = post_data.get("section"), -                #          parcel_number = post_data.get("parcel_number"), -                #          town = post_data.get("town") -                #      ) -                #      operation.parcels.add(parcel_to_add) +                else: +                    parcel_to_add = models.Parcel.objects.create( +                        year = data.get("year"), +                        section = data.get("section"), +                        parcel_number = data.get("parcel_number"), +                        town = models.Town.objects.get(pk=int(data.get("town"))) +                    ) +                    operation.parcels.add(parcel_to_add)          else:              print("je passe ici")              formset = formset_class() @@ -502,10 +493,11 @@ def operation_modify_parcels(request, pk):              'form-MIN_NUM_FORMS': 0,              'form-MAX_NUM_FORMS': 100,          }) +        data_new = data.copy() +        data_new['form-TOTAL_FORMS'] = 1 -        #  formset = formset_class(initial=initial, data=data)          formset = formset_class(initial=initial, data=data) #, prefix="modified_parcel" -        formset_add = formset_class(data=data) #, prefix="new_parcel" +        formset_add = formset_class(data=data_new) #, prefix="new_parcel"          for form in formset:# DEBUG              print(form.as_table())# DEBUG | 
