Filter Expression 只能包含非主键属性

Filter Expression can only contain non-primary key attributes

我是 AWS Amplify 的新手,并且为我正在从事的项目创建了一个 GraphQL API 以便学习它和 AppSync。本质上我有一个如下所示的模式:

type User @model {
  id: ID! @primaryKey
  boards: [Board] @hasMany
  createdAt: String!
  updatedAt: String!
}

type Board @model {
  id: ID! @primaryKey
  createdBy: User!
  title: String!
}

并且我正在尝试 运行 AppSync 控制台中的以下查询:

query MyQuery {
  listUsers {
    items {
      boards {
        items {
          title
        }
      }
    }
  }
}

但出于某种原因,我一直看到这个错误:

Filter Expression can only contain non-primary key attributes: Primary key attribute: userBoardsId

我在两个模型中都指定了主键,我知道 AppSync 会生成 'userBoardsId' 外键,但我不确定它为什么会导致问题。

你试过这样吗?由于 boards 是数组,你需要添加 items

query MyQuery {
  listUsers {
    items {
      boards {
        items {
          title
        }
      }
    }
  }
}

编辑:

type User @model {
  id: ID! @primaryKey
  boards: [Board] @hasMany (indexName: "byUser")
  createdAt: String!
  updatedAt: String!
}
type Board @model {
  id: ID! @primaryKey
  userID: ID! @index(name: "byUser")
  createdBy: User
  title: String!
}