2015-10-19 76 views
0

我试图创建一个非常简单的应用程序:我正在使用FOS用户包和ACL。如何获取用户的实体在Symfony中使用ACL

我有一个实体叫做网站,用户可以创建网站。当他们这样做时,我将该用途指定为该网站的所有者。

现在我想有一个页面,列出用户拥有的域或他具有读取权限的域。我一直在寻找,但我找不到任何解决办法。

+0

我建议你使用安全选民而不是ACL。它更容易理解,使用起来更加灵活。这里有一个很好的例子来源:http://slides.com/marieminasyan/drop-ace-use-role-voters#/ –

回答

2

为什么不建立在usersite之间的正常实体关系?然后你只需要做$user->getSites()或写一个自定义查询,然后你就可以得到这个用户的所有网站。

然后为了安全起见,您可以使用选民,如上面评论中所述,或者您也可以使用带有表达式的安全注释,如@Security("user.getSites().contains(site)")

+0

是有道理的,谢谢! – petekaner

相关问题