From 20c2a8119486b0d07be0b50a3951998791f192cc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Simon=20K=C3=BCnzel?= <simonk@fsmpi.rwth-aachen.de>
Date: Sun, 9 Feb 2025 23:43:24 +0100
Subject: [PATCH] Fix id suffix for Any2Many fields

---
 .../api_object/fields/relationship_fields.py              | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/videoag_common/api_object/fields/relationship_fields.py b/src/videoag_common/api_object/fields/relationship_fields.py
index a324c8b..28d9e35 100644
--- a/src/videoag_common/api_object/fields/relationship_fields.py
+++ b/src/videoag_common/api_object/fields/relationship_fields.py
@@ -22,8 +22,6 @@ class ApiAbstractRelationshipField(ApiAbstractColumnField[_O], Generic[_O], ABC)
         self._relationship: orm.Relationship or None = None
     
     def post_init(self, context: FieldContext):
-        self.config_id = f"{self.member_name}_id"
-        
         super().post_init(context)
         
         if not isinstance(context.own_member, orm.InstrumentedAttribute):
@@ -57,6 +55,8 @@ class ApiMany2OneRelationshipField(ApiAbstractRelationshipField[_O], Generic[_O]
         self._may_be_none = may_be_none
     
     def post_init(self, context: FieldContext):
+        self.config_id = f"{self.member_name}_id"
+        
         if self.data_foreign_in_context and self.data_id is None and self.member_name is not None:
             self.data_id = f"{self.member_name}_id"
         
@@ -117,8 +117,10 @@ class ApiAny2ManyRelationshipField(ApiAbstractRelationshipField[_O], Generic[_O]
         super().__init__(**kwargs)
     
     def post_init(self, context: FieldContext):
+        self.config_id = f"{self.member_name}_ids"
+        
         if self.data_foreign_in_context and self.data_id is None and self.member_name is not None:
-            self.data_id = f"{self.member_name}_id"
+            self.data_id = f"{self.member_name}_ids"
 
         super().post_init(context)
     
-- 
GitLab