使用AWS Amplify如何更新schema.graphql模型文件,以便为创建的graphql API跨多个字段进行后端验证。
例如,使用以下schema.graphql文件进行放大,我如何更新它(或者使用项目中的其他文件),以便在它创建的graphql API上包含服务器端验证检查,以便:
“startDate应该在endDate之前”
schema.graphql文件:
type Event @model {
id: ID!
name: String!
startDate: AWSDate!
endDate: AWSDate!
plan: Plan! @connection(name: "PlanEvents")
}
如果使用放大不可能做到这一点(注意我正在使用javascript放大反应前端),建议重新采用什么方法来实现(例如,我需要研究和学习后端AWS组件,以及如何将与自动化graphql api集成,放大有效地为我自动构建)
你可以添加一个custom resolver
您的事件模型将导致创建文件build/Mutation.createEvent.req.vtl
,可以通过添加resolvers/Mutation.createEvent.req.vtl
来覆盖该文件。在该文件中,您可以使用逻辑来比较两个日期并抛出错误。就像是:
#if( $ctx.args.input.startDate > $ctx.args.input.endDate )
$util.error("startDate must be before endDate")
#end
请记住,我不知道在VTL中比较日期的实际语法是什么。 This可能会有所帮助