我目前正在使用FastAPI +草莓GraphQL构建微服务。我想公开带有和/或条件的模型的过滤器。例如,
{ Student(where:{and[{AgeGt: 15},{PercentageLt: 75}]}) { edges { node { Percentage }
这个是可能的吗?任何参考或例子都会有很大帮助。
发布于 2022-03-07 16:40:13
在草莓中,可以使用 输入类型 为查询定义参数
下面是一个应该帮助您使用草莓定义过滤器的示例:
from typing import Optional, List, TypeVar, Generic from datetime import date import strawberry T = TypeVar("T") @strawberry.input class AbelFilter(Generic[T]): eq: Optional[T] = None gt: Optional[T] = None lt: Optional[T] = None @strawberry.input class WhereFilter: foo: Optional[AbelFilter[str]] = None bar: Optional[AbelFilter[int]] = None baz: Optional[AbelFilter[str]] = None @strawberry.type