Symfony2 ACL和寻呼机/多个实体过滤

cyb*_*bat 10 acl symfony doctrine-orm

我已经看到ACL的例子来处理一个实体,但没有处理提取多个项目的例子 - 例如属于作者的帖子列表.一个(坏)建议是获取所有项目,然后使用acl过滤 - 当我们有一百万个项目时不会工作.获取多个项目的预期方式是什么 - 假设我想获取我的所有帖子(使用我需要的任何条件,例如发布或订购),批量为50的寻呼机(后期过滤不起作用的另一个原因 - 我最终会有不同的页面大小.

Vla*_*sny 2

我认为,您不应该使用 ACL 来确定哪些帖子属于特定作者,因为 ACL 是关于访问控制/权限,而不是关于查找所有者或确定对象关系。

但当然,您完全可以想要获取某个用户可以查看、编辑或审核的帖子列表。

目前,在 API 级别上没有执行此操作的功能,但是......好吧,我认为在 Symfony2 / Doctrine2 中,您可以只执行本机查询并与acl_entries table联接。

但有一个缺点。在大型系统acl_entries表中,将包含太多行,并且对其进行连接可能会很慢(我们知道,MySQL 有时很愚蠢)。因此,您可能还想围绕此构建某种缓存系统。

  • 我只是感到困惑,这个问题没有得到解决。这意味着在本机级别上没有管理生成器,没有分页。 (3认同)