diff options
author | Cefin <kevon@tuta.io> | 2022-02-04 19:17:48 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-12-12 12:21:00 +0100 |
commit | a2e7da8287f97d5a0595042ac143f118c75298f2 (patch) | |
tree | 139c400c3ce058a28522f9fcbbf0846bd4081341 /archaeological_operations/views.py | |
parent | 101f1a37c06ee2837f20444cf22072bff8384315 (diff) | |
download | Ishtar-a2e7da8287f97d5a0595042ac143f118c75298f2.tar.bz2 Ishtar-a2e7da8287f97d5a0595042ac143f118c75298f2.zip |
Operation - Parcels - Modify: adjustments #5227
Diffstat (limited to 'archaeological_operations/views.py')
-rw-r--r-- | archaeological_operations/views.py | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 15fe0fce8..7ffdcf3e8 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -39,6 +39,7 @@ from ishtar_common.models import ( IshtarSiteProfile, DocumentTemplate, ) +from archaeological_context_records.models import ContextRecord from ishtar_common.utils import put_session_message, check_rights_condition from ishtar_common.views import ( gen_generate_doc, @@ -453,7 +454,10 @@ def operation_modify_parcels(request, pk): for data in post_data: print(data) - current_parcel = models.Parcel.objects.get(pk=data["pk"]) + try: + current_parcel = models.Parcel.objects.get(pk=data["pk"]) + except models.Parcel.DoesNotExist: + current_parcel = None if current_parcel: not_deleted_or_associated = True @@ -461,11 +465,10 @@ 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: + if parcel_associated_by_context_record.count() > 0: raise ValidationError("This parcel is associated with a context record. It can't be deleted.") else: - current_parcel.delete() # Need to delete parcel or just the relation ? - # operation.parcels.delete(current_parcel) # Is this work ? + current_parcel.delete() not_deleted_or_associated = False if not_deleted_or_associated: @@ -485,7 +488,6 @@ def operation_modify_parcels(request, pk): else: print("je passe ici") formset = formset_class() - formset_add = formset_class() else: data.update({ 'form-TOTAL_FORMS': len(initial), @@ -493,18 +495,14 @@ 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) #, prefix="modified_parcel" - formset_add = formset_class(data=data_new) #, prefix="new_parcel" + formset = formset_class(initial=initial, data=data) for form in formset:# DEBUG print(form.as_table())# DEBUG return render(request, 'ishtar/forms/operation_modify_parcels.html', { 'formset': formset, - 'formset_add': formset_add, "url": reverse("operation-parcels-modify", args=[pk]) }) |