diff --git a/contracts/admin.py b/contracts/admin.py
index c1d1be4b1a99de8f87001a5dd29f071ca2d8a20a..d83bd23e707f4596cc83c7dbb0be539aef0e53ab 100644
--- a/contracts/admin.py
+++ b/contracts/admin.py
@@ -159,9 +159,14 @@ class ContracteeSignatureRepresentativeInline(
     def get_parent_object_is_editable(self, obj):
         if hasattr(obj, "contract"):
             return obj.contract.is_editable_without_approve_permission
-        else:
+
+        # Crashes if there is invalid input otherwise.
+
+        elif hasattr(obj, "is_editable_without_approve_permission"):
             return obj.is_editable_without_approve_permission
 
+        return False
+
     def get_formset(self, request, obj=None, **kwargs):
         formset = super().get_formset(request, obj, **kwargs)
         formset.request = request
@@ -182,9 +187,14 @@ class SigneeSignatureRepresentativeInline(
     def get_parent_object_is_editable(self, obj):
         if hasattr(obj, "contract"):
             return obj.contract.is_editable_without_approve_permission
-        else:
+
+        # Crashes if there is invalid input otherwise.
+
+        elif hasattr(obj, "is_editable_without_approve_permission"):
             return obj.is_editable_without_approve_permission
 
+        return False
+
     model = SigneeSignatureRepresentative
     extra = 0