File tree 1 file changed +5
-1
lines changed
packages/twenty-server/src/engine/twenty-orm/utils
1 file changed +5
-1
lines changed Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ import { metadataArgsStorage } from 'src/engine/twenty-orm/storage/metadata-args
7
7
export const getJoinColumn = (
8
8
joinColumnsMetadataArgsCollection : WorkspaceJoinColumnsMetadataArgs [ ] ,
9
9
relationMetadataArgs : WorkspaceRelationMetadataArgs ,
10
+ opposite = false ,
10
11
) : string | null => {
11
12
if (
12
13
relationMetadataArgs . type === RelationMetadataType . ONE_TO_MANY ||
@@ -24,7 +25,8 @@ export const getJoinColumn = (
24
25
// If we're in a ONE_TO_ONE relation and there are no join columns, we need to find the join column on the inverse side
25
26
if (
26
27
relationMetadataArgs . type === RelationMetadataType . ONE_TO_ONE &&
27
- filteredJoinColumnsMetadataArgsCollection . length === 0
28
+ filteredJoinColumnsMetadataArgsCollection . length === 0 &&
29
+ ! opposite
28
30
) {
29
31
const inverseSideTarget = relationMetadataArgs . inverseSideTarget ( ) ;
30
32
const inverseSideJoinColumnsMetadataArgsCollection =
@@ -47,6 +49,8 @@ export const getJoinColumn = (
47
49
return getJoinColumn (
48
50
inverseSideJoinColumnsMetadataArgsCollection ,
49
51
inverseSideRelationMetadataArgs ,
52
+ // Avoid infinite recursion
53
+ true ,
50
54
) ;
51
55
}
52
56
You can’t perform that action at this time.
0 commit comments