Recursive types #181

This commit is contained in:
2025-09-28 21:53:15 +02:00
parent 39d06dfe48
commit 39351a5eb9
41 changed files with 281 additions and 134 deletions

View File

@@ -11,32 +11,32 @@ from cpl.graphql.schema.sort.sort_order import SortOrder
users = [User(i, f"User {i}") for i in range(1, 101)]
cities = [City(i, f"City {i}") for i in range(1, 101)]
class AuthUserFilter(Filter[AuthUser]):
def __init__(self):
Filter.__init__(self)
self.field("id", int)
self.field("username", str)
class AuthUserSort(Sort[AuthUser]):
def __init__(self):
Sort.__init__(self)
self.field("id", SortOrder)
self.field("username", SortOrder)
class AuthUserGraphType(GraphType[AuthUser]):
def __init__(self):
GraphType.__init__(self)
self.int_field(
"id",
resolver=lambda root: root.id,
)
self.string_field(
"username",
resolver=lambda root: root.username,
)
# class AuthUserFilter(Filter[AuthUser]):
# def __init__(self):
# Filter.__init__(self)
# self.field("id", int)
# self.field("username", str)
#
#
# class AuthUserSort(Sort[AuthUser]):
# def __init__(self):
# Sort.__init__(self)
# self.field("id", SortOrder)
# self.field("username", SortOrder)
#
# class AuthUserGraphType(GraphType[AuthUser]):
#
# def __init__(self):
# GraphType.__init__(self)
#
# self.int_field(
# "id",
# resolver=lambda root: root.id,
# )
# self.string_field(
# "username",
# resolver=lambda root: root.username,
# )
class HelloQuery(Query):
def __init__(self):
@@ -60,10 +60,10 @@ class HelloQuery(Query):
CitySort,
resolver=lambda: cities,
)
self.dao_collection_field(
AuthUserGraphType,
AuthUserDao,
"authUsers",
AuthUserFilter,
AuthUserSort,
)
# self.dao_collection_field(
# AuthUserGraphType,
# AuthUserDao,
# "authUsers",
# AuthUserFilter,
# AuthUserSort,
# )