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过滤器时,它仅适用于像这样 ex 编写的刺痛。“%起司%”。百分号适用于字符串,但是当我尝试对变量$hash做同样的事情时,它不起作用。如何用变量做 _ilike?当然,我将 $hash 放在 _ilike 之后没有 % 但它没有返回任何内容。只有当我使用常规字符串而不是变量时它才有效。我想如何在 Hasura graph Ql 中编写 _ilike + 变量。哦,我的项目是用 Javascript 编写的。
谢谢
解决方案
查询“正文”不适用于任何类型的操作、没有连接、没有评估、没有字符串文字等。
您必须将准备好的、提前准备好的字符串作为变量传递。
variables: {
domain: "some domain",
hash: `%${someHashVariable}%`
}
// in query simply
// ... hashtag: {_ilike: $hash}
推荐阅读
- c++ - 使用模板函数指针数组
- android - gradlew assembleRelease 不适用于 react-native-camera
- java - 是否可以在以 adb 启动的 Java 服务中创建活动?
- ssh - Windows 10 上的错误“getsockname failed: Not a socket”
- github - 如何接受 GitHub 上的私有存储库所有权?
- webrtc - 转服务器中继端口在严格的防火墙中被阻止
- django - 验证电子邮件地址确实存在
- csv - Apache Superset - CSV 上传问题:FileNotFoundError
- c - 预处理器会扩展用引号括起来的宏吗?
- python - 我想在数据库 python-flask 中更新,我编写了用于编辑的代码,但我没有收到任何错误,但值在更改后仍然保持以前的值