Skip to content

Commit d3e6429

Browse files
committed
Hide implementation details
1 parent 0c661f7 commit d3e6429

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

fquery/sqlmodel.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,11 @@ def many_to_one(key_column=None, back_populates=None):
7272
)
7373
# if key_column is None, we default to {key_table_name}.id
7474
if key_column is not None:
75+
# Transform Table.id into TableSQLModel.id
76+
splits = key_column.split(".")
77+
if len(splits) >= 1:
78+
splits[0] = f"{splits[0]}SQLModel"
79+
key_column = ".".join(splits)
7580
ret.metadata["SQL"]["key_column"] = key_column
7681
if back_populates is not None:
7782
ret.metadata["SQL"]["back_populates"] = back_populates

tests/test_self_reference.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@ class Topic:
1717
probability: Optional[float] = None
1818
level: int
1919
combined_prob: Optional[float] = None
20-
parent: Optional["Topic"] = many_to_one(
21-
"TopicSQLModel.id", back_populates="children"
22-
)
20+
parent: Optional["Topic"] = many_to_one("Topic.id", back_populates="children")
2321
children: List["Topic"] = one_to_many(back_populates="parent")
2422

2523

0 commit comments

Comments
 (0)