GraphQL/Graphcool关联查询过滤问题:如何筛选user非空的Bid?
解决Graphcool中筛选关联Bid(user不为空)的问题
嘿,刚看到你的问题啦,其实就是筛选器的语法用错了,很容易搞混的😅
你报错的原因是Graphcool的BidFilter里根本没有user_not这个字段,它判断关联字段是否非空的筛选器语法是[关联字段名]_not_null,而不是user_not: null。
给你一个正确的查询示例,用来获取指定产品下所有user不为空的Bid:
query GetProductWithValidBids($productId: ID!) { Product(id: $productId) { id name # 这里用user_not_null来筛选关联user存在的Bid bids(filter: { user_not_null: true }) { id amount user { id username } } } }
简单解释下:
- 我们在关联字段
bids的filter参数里,用user_not_null: true来指定只返回那些关联了User的Bid条目 - 这种
[字段名]_not_null的格式是Graphcool用来判断关联关系是否存在的标准筛选器,和判断普通字段不等于某个值的[字段名]_not是不同的用法
这样修改后,你的查询应该就能正常返回符合要求的Bid数据啦~
内容的提问来源于stack exchange,提问作者pkdkk
相关产品推荐
相关产品推荐

