GraphQL - 在多个字段中搜索字符串

GraphQL - search string in multiple fields

我正在尝试使用 GraphQL 在多个字段中搜索字符串。

我能够对 or 字段使用过滤函数,但它没有检索到任何东西。 我希望能够检索一个数组,其中包含标题 or/and body 中包含搜索字符串的所有项目 ==> 因此,如果在标题中找到查询字符串或 body 检索它到数组。

我的代码是:

const search_reviews= gql`
 query SearchReviews ($my_query: String) {
    reviews (filters: {title: {contains: $my_query}, or: {body: {contains: $my_query}} }) {
      data{
        id
        attributes{
          title
          rating
          body
          categories{
            data{
              id
              attributes
              {
                name
              }
            }
          }
        }
    }
  
 }
}

`

只对一个字段有效,但我想在两个字段中都使用它

const search_reviews= gql`
 query SearchReviews ($my_query: String!) {
    reviews (filters: {body: {contains: $my_query} }) {
      data{
        id
        attributes{
          title
          rating
          body
          categories{
            data{
              id
              attributes
              {
                name
              }
            }
          }
        }
    }
  
 }
}

`

他们似乎更改了 API。

这是一些代码:

const search_reviews = gql`
 query SearchReviews ($my_query: String!) {
    reviews (filters: {or: [{body: {contains: $my_query} }, {title: {contains: $my_query}}]}) {
      data{
        id
        attributes{
          title
          rating
          body
          categories{
            data{
              id
              attributes
              {
                name
              }
            }
          }
        }
    }
  
 }
}

`

基本上您需要使用 $filtersor 来在正文或磁贴中搜索。

reviews (filters: {or: [{body: {contains: $my_query} }, {title: {contains: $my_query}}]})

大家干杯!