我已经阅读了几个不同的Zend书籍,其中ACL和身份验证使用组合实现。他们通常涉及动作助手与preDispatch方法,在引导程序中注册。Zend:ACL和身份验证通过继承,而不是作文
现在,在迄今为止的所有编码中,为我的每个控制器执行相同的ACL和Auth方法。因此,我想我可能也会使用继承来实现这一点。我错过了什么吗?继承似乎更直接一点。
之前我使用动作助手来避免必须将所有规则加载到ACL对象中。 (我只是将当前控制器注册为ACL资源,并为其添加规则)。但是,当我开始整合Zend导航时,我发现我需要所有的ACL规则(不考虑控制器),以便确定向用户展示哪些菜单选项。
我想,在构图方面,我的ACL和Auth助手更容易在其他项目上使用,但这对我来说只是一个小小的好处。
谢谢!
您也可以使用控制器插件,请参阅http://stackoverflow.com/questions/4943940/using-zend-auth-to-secure-all-controllers/4944672#4944672看起来像一个组合,但非常接近继承的控制器。这并不妨碍你有一个Zend_Acl对象可用于菜单。 – regilero
不错的一个regilero。你想剪切/粘贴到答案?迄今为止,这是我的最爱。 –