因此,我安装了 foscomment(迄今为止的最新版本)并将其设置为 ACL,并且成功。然后我决定也添加他们基于角色的权限。问题是,发表评论的用户不能再编辑他们自己的评论。如果我赋予他们的角色编辑权,那么他们就可以编辑所有评论。
是否可以在 foscomment 包中本地使用 ACL 和角色?那么那个edit and delete可以设置为ROLE_ADMIN,但是ACL可以允许用户编辑和删除自己的post,即使他们是ROLE_USER?
或者我是否必须放弃角色部分并扩展模板并将其添加到自己中?
这是我的 config.yml foscomment 片段
fos_comment:
db_driver: orm
class:
model:
comment: Application\Bundle\CommentBundle\Entity\Comment
thread: Application\Bundle\CommentBundle\Entity\Thread
acl: true
service:
acl:
thread: fos_comment.acl.thread.roles
comment: fos_comment.acl.comment.roles
vote: fos_comment.acl.vote.roles
manager:
thread: fos_comment.manager.thread.acl
comment: fos_comment.manager.comment.acl
vote: fos_comment.manager.vote.acl
acl_roles:
comment:
create: ROLE_USER
view: IS_AUTHENTICATED_ANONYMOUSLY
edit: ROLE_ADMIN
delete: ROLE_ADMIN
thread:
create: IS_AUTHENTICATED_ANONYMOUSLY
view: IS_AUTHENTICATED_ANONYMOUSLY
edit: ROLE_ADMIN
delete: ROLE_ADMIN
vote:
create: IS_AUTHENTICATED_ANONYMOUSLY
view: IS_AUTHENTICATED_ANONYMOUSLY
edit: ROLE_ADMIN
delete: ROLE_ADMIN