簡體   English   中英

如何定義具有在另一個模式中定義的參數類型的 hasura gql 突變?

[英]How do I define a hasura gql mutation that has an argument type defined in another schema?

這是我的 GQL...(注意變量$rrule

mutation CREATE(
  $title: String!,
  $description: String!,
  $duration: interval!,
  $photo_url: String,
  $rrule: String!,
  $venue_id: Int!
) {
  result:insert_event_templates_one(
    object: {
      title: $title,
      description: $description,
      duration: $duration,
      photo_url: $photo_url,
      rrule: $rrule,
      venue_id: $venue_id
    }      
  ) {
    id
  }
}

rrule 是另一個模式中的自定義列類型: _rrule它可以隱式轉換定義如下:

CREATE CAST (TEXT AS _rrule.RRULE)
  WITH FUNCTION _rrule.rrule(TEXT)
  AS IMPLICIT;

如何定義我的突變以引用該演員表? 現在,當我運行此突變時,我收到以下錯誤:

variable rrule of type String! is used in position expecting rrule

所以 Hasura 似乎知道底層的列類型,但不能使用它的隱式轉換?

該錯誤與底層數據源沒有任何關系。 使用$rrule變量的參數接受名為rrule的 GraphQL 類型。 只有類型匹配的變量才能傳遞給參數。 所以$rrule的類型必須與參數rrule的類型相同——也就是說,它的類型也應該是rrule

mutation CREATE(
  $rrule: rrule!
  ...
) {
...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM