0

假设我有

@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
    @Column(name="trade_id")
    int tradeId;

当我从数据库中查询这个时,我会想要获取 tradeId。但是,在执行创建时,显然我不会有 tradeId,因为数据库会在我插入它时生成它。

input TradeInput {
  tradeId: Int!
...

但是,为我生成的模式 SPQR 将此字段设置为 Not Null。

所以我的问题是,如何防止这个字段自动出现为 Not Null,所以我不必在 Creates 上发送它,而是可以检索它。

4

1 回答 1

1

一个int根本不可能null。但是你有几个选择:

  • 将其转换为ID标量类型(使用@GraphQLId)而不是Int
  • 通过给它一个默认值@GraphQLInputField
  • 使用Integer代替int,因为Integer它可以为空
于 2021-08-28T21:05:32.230 回答