diff --git a/contracts/admin.py b/contracts/admin.py
index d83bd23e707f4596cc83c7dbb0be539aef0e53ab..349cf61b50638f56a33c83aa6a295179a6b849bd 100644
--- a/contracts/admin.py
+++ b/contracts/admin.py
@@ -123,7 +123,10 @@ class ContractFileAdmin(
 
 class ParentContractInlineMixin:
     def get_parent_object_is_editable(self, obj):
-        return obj.is_editable_without_approve_permission
+        if hasattr(obj, "is_editable_without_approve_permission"):
+            return obj.is_editable_without_approve_permission
+
+        return False
 
     def has_add_permission(self, request, obj=None):
         if (
@@ -165,7 +168,12 @@ class ContracteeSignatureRepresentativeInline(
         elif hasattr(obj, "is_editable_without_approve_permission"):
             return obj.is_editable_without_approve_permission
 
-        return False
+        # FIXME: We MUST return a True value here, since the admin seemingly
+        # creates the parent ContracteeSignature with empty data, then
+        # validates this inline before actually filling any fields.
+        # Thus, it has no `contract` attribute.
+
+        return True
 
     def get_formset(self, request, obj=None, **kwargs):
         formset = super().get_formset(request, obj, **kwargs)
@@ -193,7 +201,12 @@ class SigneeSignatureRepresentativeInline(
         elif hasattr(obj, "is_editable_without_approve_permission"):
             return obj.is_editable_without_approve_permission
 
-        return False
+        # FIXME: We MUST return a True value here, since the admin seemingly
+        # creates the parent ContracteeSignature with empty data, then
+        # validates this inline before actually filling any fields.
+        # Thus, it has no `contract` attribute.
+
+        return True
 
     model = SigneeSignatureRepresentative
     extra = 0
diff --git a/contracts/models.py b/contracts/models.py
index 380e736bac72e7ed2769ab7b4d727f13ac4c0802..026c0dc6c7e830a0d38fe067372bc25d3f221e00 100644
--- a/contracts/models.py
+++ b/contracts/models.py
@@ -993,7 +993,10 @@ class ContracteeSignature(models.Model):
     )
 
     def __str__(self) -> str:
-        return f"{str(self.contractee)} - {self.date}"
+        if hasattr(self, "contractee"):
+            return f"{str(self.contractee)} - {self.date}"
+        else:
+            return f"Bez smluvnĂ­ strany - {self.date}"
 
     class Meta:
         app_label = "contracts"
@@ -1030,7 +1033,10 @@ class SigneeSignature(models.Model):
     )
 
     def __str__(self) -> str:
-        return f"{str(self.signee)} - {self.date}"
+        if hasattr(self, "signee"):
+            return f"{str(self.signee)} - {self.date}"
+        else:
+            return f"Bez smluvnĂ­ strany - {self.date}"
 
     class Meta:
         app_label = "contracts"