php – 如何使用Symfony ACL过滤我的Doctrine查询

Symfony ACL允许我授予访问实体的权限,然后检查它:

if (false === $securityContext->isGranted('EDIT', $comment)) {
    throw new AccessDeniedException();
}

但是,如果数据库中有数千个实体,并且用户只能访问其中的10个实体,那么我不想将内存中的所有实体加载到其中.

只能在用户访问的实体(SQL级别)上过滤时,如何执行简单的“SELECT * FROM X”?

最佳答案
那就是:这是不可能的.

在过去一年中,我一直在使用另一种ACL系统,允许在数据库查询中直接过滤.

我公司最近同意开源,所以这里是:http://myclabs.github.io/ACL/

转载注明原文:php – 如何使用Symfony ACL过滤我的Doctrine查询 - 代码日志