一个简单的查询,但 Graphene-Django 返回空值
A simple query but Graphene-Django is returning null values
我正在尝试使用 graphene-django 进行简单查询,但我无法获取数据库,它给了我空值。
我认为代码没问题,哪里出了问题,我在上面工作了几个小时。
你知道它是什么吗?
提前致谢
import graphene
from graphene_django.types import DjangoObjectType, ObjectType
from myProject.models import Times
class TimesType(DjangoObjectType):
class Meta:
model=Times
fields="__all__"
class Query(ObjectType):
today_times = graphene.Field(TimesType, id=graphene.ID())
all_times = graphene.List(TimesType)
def resolve_todaytimes(self, info, id=None):
return Times.objects.get(pk=id)
def resolve_alltimes(root, info, **kwargs):
return Times.objects.all()
schema = graphene.Schema(query=Query, mutation=Mutation)
query {todayTimes(id:"1029"){id}}
{
"data": {
"todayTimes": null
}
}
解析器方法应以resolve_<FieldName>
格式命名
class Query(ObjectType):
today_times = graphene.Field(TimesType, id=graphene.ID())
all_times = graphene.List(TimesType)
<b>def resolve_today_times(self, info, id=None): # not `resolve_todaytimes`</b>
return Times.objects.get(pk=id)
<b>def resolve_all_times(root, info, **kwargs): # not `resolve_alltimes`</b>
return Times.objects.all()
或者,您可以使用 resolver
参数将可调用解析器设置为,
def resolve_todaytimes(self, info, id=None):
return Times.objects.get(pk=id)
def resolve_alltimes(root, info, **kwargs):
return Times.objects.all()
class Query(ObjectType):
today_times = graphene.Field(
TimesType,
id=graphene.ID(),
<b>resolver=resolve_todaytimes</b>
)
all_times = graphene.List(
TimesType,
<b>resolver=resolve_alltimes</b>
)
我正在尝试使用 graphene-django 进行简单查询,但我无法获取数据库,它给了我空值。
我认为代码没问题,哪里出了问题,我在上面工作了几个小时。
你知道它是什么吗?
提前致谢
import graphene
from graphene_django.types import DjangoObjectType, ObjectType
from myProject.models import Times
class TimesType(DjangoObjectType):
class Meta:
model=Times
fields="__all__"
class Query(ObjectType):
today_times = graphene.Field(TimesType, id=graphene.ID())
all_times = graphene.List(TimesType)
def resolve_todaytimes(self, info, id=None):
return Times.objects.get(pk=id)
def resolve_alltimes(root, info, **kwargs):
return Times.objects.all()
schema = graphene.Schema(query=Query, mutation=Mutation)
query {todayTimes(id:"1029"){id}}
{
"data": {
"todayTimes": null
}
}
解析器方法应以resolve_<FieldName>
格式命名
class Query(ObjectType):
today_times = graphene.Field(TimesType, id=graphene.ID())
all_times = graphene.List(TimesType)
<b>def resolve_today_times(self, info, id=None): # not `resolve_todaytimes`</b>
return Times.objects.get(pk=id)
<b>def resolve_all_times(root, info, **kwargs): # not `resolve_alltimes`</b>
return Times.objects.all()
或者,您可以使用 resolver
参数将可调用解析器设置为,
def resolve_todaytimes(self, info, id=None):
return Times.objects.get(pk=id)
def resolve_alltimes(root, info, **kwargs):
return Times.objects.all()
class Query(ObjectType):
today_times = graphene.Field(
TimesType,
id=graphene.ID(),
<b>resolver=resolve_todaytimes</b>
)
all_times = graphene.List(
TimesType,
<b>resolver=resolve_alltimes</b>
)