如何在石墨烯GraphQl中允许任何字段过滤



我想知道,如果有一种方法可以传递更多的参数,以便在石墨烯GraphQl解析器中查询。

所以这段代码只适用于wgr_bez:

class GraphqlService(graphene.ObjectType):
get_single_article = graphene.Field(ArticleGrapheneModel, wgr_bez=graphene.String)

@staticmethod
async def resolve_get_single_article(parent, info, **kwargs):
article = await info.context['request'].state.db.select_article_with_filter(kwargs)
return article[0][0].to_json()

使用**kwargs,我可以从请求中获得任何列:值对,但如何传递任何列:值,我不明白。

我希望能够用更通用的东西或者至少是字典来代替它。我在文档中看到了它,但是当我这样做时,我得到了一个错误:

get_single_article = graphene.Field(ArticleGrapheneModel, {'wgr_bez': graphene.String, 'id': graphene.Int})

ValueError: Unknown argument "wgr_bez".

我找到了一个答案,一个人需要定义如下参数:

get_single_article = graphene.Field(ArticleGrapheneModel, args={'wgr_bez': graphene.Argument(graphene.String),
'id': graphene.Argument(graphene.Int)})

相关内容

  • 没有找到相关文章

最新更新