Nove dataloadery, lepsi sprava POI, migrace DB

This commit is contained in:
Michal Kváček
2023-08-23 21:40:13 +02:00
parent 9314d31186
commit 11866e154c
8 changed files with 216 additions and 12 deletions
+8 -1
View File
@@ -1,7 +1,8 @@
from typing import List
import strawberry
from sqlalchemy import select
from sqlalchemy import select, or_
from database import models
from decorators.endpoints import authenticated_user_only
from graphql_schema.sqlalchemy_to_strawberry_type import strawberry_sqlalchemy_type
@@ -14,6 +15,10 @@ def get_base_query(user_id: int):
return (
select(models.Airport)
.filter(models.Airport.deleted.is_(False))
.filter(or_(
models.Airport.created_by_id == user_id,
models.Airport.created_by_id.is_(None),
))
)
@@ -21,6 +26,7 @@ def get_base_query(user_id: int):
class AirportQueries:
@strawberry.field
@authenticated_user_only()
async def airports(root, info) -> List[Airport]:
query = (
get_base_query(info.context.user_id)
@@ -30,6 +36,7 @@ class AirportQueries:
return (await info.context.db.scalars(query)).all()
@strawberry.field
@authenticated_user_only()
async def airport(root, info, id: int) -> Airport:
query = (
get_base_query(info.context.user_id)