javascript - 如何在 graphql 查询中使用带有变量的 % 符号

我有一个查询,我想通过查看与用户将键入的输入变量相似的内容来过滤结果。

这是我的问题

query MyQuery($domain:String!, $hash:String!) {
  hashtags_hashtags(where: {domain: {_eq: $domain}}, limit: 15, offset: 5, order_by: {hashtag: asc}) {
    hashtag
    responses_languages(where: {language: {_eq: "english"}, hashtag: {_ilike: %$hash%}}) {
      hashtag
      response
    }
  }
}

所以当我在 hasura 控制台中测试 _ilike 过滤器时,它只适用于像这样写的 sting。 “%奶酪%”。百分号适用于字符串,但当我尝试用我的变量 $hash 做同样的事情时,它不起作用。如何用变量做_ilike?当然,我把 $hash 放在 _ilike 之后,没有 % 但它没有返回任何东西。只有当我使用常规字符串而不是变量时它才有效。我应该如何在 Hasura graph Ql 中编写 _ilike + 变量。哦,我的项目是用 Javascript 编写的。

谢谢

最佳答案

查询“正文”不适用于任何类型的操作、无连接、无求值、无字符串文字等。

你必须传递 ready, prepared earlier, string 作为变量。

variables: {
  domain: "some domain",
  hash: `%${someHashVariable}%`
}

// in query simply 
// ...  hashtag: {_ilike: $hash}

https://stackoverflow.com/questions/63969229/

相关文章:

regex - 使用 sed 获取文件的 IPv4 地址并使用前缀导出

python - GitPython - 添加已修改、已删除、未跟踪到 Git 存储库

c# - C 和 Arduino 中的有趣部门

node.js - Promise.all 调出 "TypeError: undefined is

dialogflow-es - Ngrok url 每天都在变化 我启动 Ngrok

ios - 方法 scrollToItemAtIndexPath 在 iOS 14 上不起作用

r - 使用带有 furrr 的 tidy 评估

java - 使用 Java 在数组中查找最后一个 3 的倍数

apache-spark - 在 SPARK 中将多列组合成单列

c# - EF Core、Sqlite、InMemory、Code First - 如何?