如何在Laravel+;灯塔图?
在切换到Lighthouse之前,我曾经有这样的验证规则:如何在Laravel+;灯塔图?,laravel,graphql,laravel-lighthouse,Laravel,Graphql,Laravel Lighthouse,在切换到Lighthouse之前,我曾经有这样的验证规则: Rule::unique('users', 'name')->where('site_id', $this->route()->parameter('site')->id)->ignore($this->route()->parameter('user')->id), 因此,在检查用户名是否唯一之前,我需要选择具有特定site\u id的用户。现在我有以下突变: updateUser(
Rule::unique('users', 'name')->where('site_id', $this->route()->parameter('site')->id)->ignore($this->route()->parameter('user')->id),
因此,在检查用户名是否唯一之前,我需要选择具有特定site\u id
的用户。现在我有以下突变:
updateUser(
name: String! @rules(apply: ["App\\Rules\\UniqueUserName"])
): User! @update
但是我应该如何提供
site\u id
(site\u id
应被视为只读属性)以及如何在自定义验证规则UniqueUserName
中访问它?复杂的验证逻辑可以通过扩展ValidationDirective
类来实现
然后可以像在laravel标准请求验证中一样,在rules()
方法中编写规则。参数可通过$this->args['site\u id']
获得
更多信息: