问题描述
Symfony的API平台允许您使用选民来授予或拒绝对资源的访问,如其docs中所述。
但是,所有示例都使用魔术值,因此我宁愿使用类常量。例如。
/**
* @ApiResource(
* itemOperations={
* "put"={"security"="is_granted(UserVoter::USER_EDIT,object)"},* }
* )
*/
我已经为UserVoter
类App\Security\Voter\UserVoter::USER_EDIT
和转义的App\\Security\\Voter\\UserVoter::USER_EDIT
使用了“ use”语句,但是API平台不接受任何内容
问题:如何在API平台中使用具有安全性的类常量?
解决方法
只是为了向任何想知道的人确认:
is_granted(constant('\\App\\Security\\Voter\\UserVoter::USER_EDIT'),object)
很有用