fix(db): resolve ambiguous foreign key relationships in join queries

This commit is contained in:
2026-04-02 21:04:24 +02:00
parent 1ff7c5b23a
commit 3ebe9d3fb8
3 changed files with 7 additions and 7 deletions

View File

@@ -24,8 +24,8 @@ async def publish_version(
if submission_id: if submission_id:
stmt = ( stmt = (
select(Submission) select(Submission)
.join(CvVersion, Submission.version_id == CvVersion.id) .join(Submission.version)
.join(CvDocument, CvVersion.document_id == CvDocument.id) .join(CvVersion.document)
.where(Submission.id == submission_id, CvDocument.owner_id == owner_id) .where(Submission.id == submission_id, CvDocument.owner_id == owner_id)
) )
result = await session.execute(stmt) result = await session.execute(stmt)
@@ -34,7 +34,7 @@ async def publish_version(
elif version_id: elif version_id:
stmt = ( stmt = (
select(CvVersion) select(CvVersion)
.join(CvDocument, CvVersion.document_id == CvDocument.id) .join(CvVersion.document)
.where(CvVersion.id == version_id, CvDocument.owner_id == owner_id) .where(CvVersion.id == version_id, CvDocument.owner_id == owner_id)
) )
result = await session.execute(stmt) result = await session.execute(stmt)

View File

@@ -89,7 +89,7 @@ async def _get_version_for_owner(
) -> CvVersion | None: ) -> CvVersion | None:
stmt = ( stmt = (
select(CvVersion) select(CvVersion)
.join(CvDocument) .join(CvVersion.document)
.where(CvVersion.id == version_id, CvDocument.owner_id == owner_id) .where(CvVersion.id == version_id, CvDocument.owner_id == owner_id)
) )
result = await session.execute(stmt) result = await session.execute(stmt)
@@ -103,8 +103,8 @@ async def _get_submission_for_owner(
) -> Submission | None: ) -> Submission | None:
stmt = ( stmt = (
select(Submission) select(Submission)
.join(CvVersion) .join(Submission.version)
.join(CvDocument) .join(CvVersion.document)
.where(Submission.id == submission_id, CvDocument.owner_id == owner_id) .where(Submission.id == submission_id, CvDocument.owner_id == owner_id)
.options(selectinload(Submission.version)) .options(selectinload(Submission.version))
) )

View File

@@ -26,7 +26,7 @@ async def create_branch(
) -> CvVersion | None: ) -> CvVersion | None:
stmt = ( stmt = (
select(CvVersion) select(CvVersion)
.join(CvDocument) .join(CvVersion.document)
.where(CvVersion.id == parent_version_id, CvDocument.owner_id == owner_id) .where(CvVersion.id == parent_version_id, CvDocument.owner_id == owner_id)
.options(selectinload(CvVersion.patches)) .options(selectinload(CvVersion.patches))
) )