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