Схема @ подключение к специальному полю - PullRequest
0 голосов
/ 14 мая 2019

Я бы хотел назначить конфиги из таблицы для ответов. Идентификатор ответа не в конфигах. В ответе есть поле с названием exam_id, а этот exam_id является идентификатором конфигурации

что у меня есть:

type Answer @model {
  id: ID!
  exam_id: String!
  user: User! @connection(name: "Answers")
  cycle: Int
  user_input: AWSJSON
  aivy_output: AWSJSON
  final_scores: AWSJSON
  score: Int
  rating: Int
  createdAt: String
  updatedAt: String
}

type ExamConfig @model { 
  id: ID!
  item_count: Int
  zscore_mean: AWSJSON
  zscore_deviation: AWSJSON
}

что я хочу:

type Answer @model {
  id: ID!
  exam_id: String! // = TOWER_OF_LONDON
  config: ExamConfig @connection  //BUT it have to be exam_id == ID from Config
  user: User! @connection(name: "Answers")
  cycle: Int
  user_input: AWSJSON
  aivy_output: AWSJSON
  final_scores: AWSJSON
  score: Int
  rating: Int
  createdAt: String
  updatedAt: String
}

type ExamConfig @model { 
  **** id: ID! // = TOWER_OF_LONDON
  item_count: Int
  zscore_mean: AWSJSON
  zscore_deviation: AWSJSON
}

когда я запрашиваю ответ, чем я хочу конфигурации в ответе. Поэтому для каждого exam_id есть специальная строка конфигурации в таблице конфигурации.

1 Ответ

0 голосов
/ 14 мая 2019

Вы можете использовать keyField аннотации соединения, чтобы назначить конкретное поле, которое оно будет использовать.Если вы используете Amplify, это выполняется, как указано здесь: https://aws -amplify.github.io / docs / cli / graphql # connection

Ваше объявление конфигурации может выглядеть примерно так:

config: ExamConfig @connection (имя: "ExamConfigs" keyField: "exam_id")

Надеюсь, это поможет.

...