使用 Laravel Lighthouse GraphQL,我想验证一个模型中的值,以便它始终与相关模型中的值匹配。
在这种情况下 aProgram
有 ayear_id
并且 aCategory
也有 a year_id
。我想验证 theProgram
和Category
use 相同year_id
。
GraphQL Schema 如下所示:
input CreateCategory {
year_id: ID!
name: String!
}
input CreateProgram {
year_id: ID!
name: String!
category: CreateCategoryRelation
}
input CreateCategoryRelation {
connect: ID
}
现在,如果我创建一个Category
(year_id: 1
返回类别 id=1):
mutation {
createCategory(input:{
year_id: 1
name: "category in year 1"
}) {
name
id
}
}
然后尝试创建一个Program
与year_id: 2
新的相关的Category
mutation {
createProgram(input:{
year_id: 2
name: "Program in year 2"
category: {
connect: 1
}
}) {
id
name
}
}
我希望验证失败,并显示“您不能在不同年份创建程序,因为它是类别!”这样的消息。
到目前为止,我找不到基于另一个模型中的任何值进行验证的方法。我怎样才能做到这一点?