CakePHP最佳实践:管理员有或没有路由

set*_*eth 5 php authorization cakephp url-routing separation-of-concerns

我正在对我在CakePHP 1.2下构建的CakePHP应用程序进行大修.我已升级到1.3,正在考虑从我的应用程序的管理路由范例转移.我发现由于前端和管理员的重复功能,我的一些控制器变得非常大.我的直觉是,创建一组管理控制器并将管理路由放在一起更加清晰,但是我希望得到关于其他人正在做什么的信息以及我将错过的功能(如果有的话)丢弃路由.

在这方面,什么被认为是健壮的CakePHP应用程序(或其他MVC框架)的最佳实践?

sib*_*iba 0

如果管理路由不适合您的场景,请不要打扰它。我也不使用它,管理路径不适合我的应用程序。重复代码完全是浪费精力。

您可以对细粒度角色使用 ACL 规则,或者简单地在控制器的 beforeFilter() 或操作的第一行中检查角色(管理标志)。

我有一个组件函数 checkRole(array()),它在我的操作的第一行中调用。如果当前用户不具有提供的角色,则会记录并终止请求。