2011-09-20 25 views
1

我已经阅读了几个不同的Zend书籍,其中ACL和身份验证使用组合实现。他们通常涉及动作助手与preDispatch方法,在引导程序中注册。Zend:ACL和身份验证通过继承,而不是作文

现在,在迄今为止的所有编码中,为我的每个控制器执行相同的ACL和Auth方法。因此,我想我可能也会使用继承来实现这一点。我错过了什么吗?继承似乎更直接一点。

之前我使用动作助手来避免必须将所有规则加载到ACL对象中。 (我只是将当前控制器注册为ACL资源,并为其添加规则)。但是,当我开始整合Zend导航时,我发现我需要所有的ACL规则(不考虑控制器),以便确定向用户展示哪些菜单选项。

我想,在构图方面,我的ACL和Auth助手更容易在其他项目上使用,但这对我来说只是一个小小的好处。

谢谢!

+1

您也可以使用控制器插件,请参阅http://stackoverflow.com/questions/4943940/using-zend-auth-to-secure-all-controllers/4944672#4944672看起来像一个组合,但非常接近继承的控制器。这并不妨碍你有一个Zend_Acl对象可用于菜单。 – regilero

+0

不错的一个regilero。你想剪切/粘贴到答案?迄今为止,这是我的最爱。 –

回答

1

你可以使用控制器的插件为好,看到previous answer,似乎是一个成分,但控制器非常接近继承。这并不妨碍你有一个Zend_Acl对象可用于菜单。

+0

感谢regilero。我忽略了前端控制器插件。 –