我认为我CakePHP
中的几乎所有内容的基础都不明显,直到Access Control Lists
,现在我在11.2.5 Creating ACOs (Access Control Objects),我不明白我必须把{{}}放在哪里{1}}方法:
AclComponent
我应该在哪个文件中插入此代码?
我是否可以在某些特定声明中插入? 我不明白这条线的确切含义,所以我无法确定它应该在何时何地运行,这段代码的作用以及何时应该有效?
答案 0 :(得分:0)
您可以在任何需要创建Aco-s的地方插入。在app_controller或任何控制器中。
答案 1 :(得分:0)
Cookbook中的这个页面为您提供了一个非常好的自动创建ACO的工具:
http://book.cakephp.org/view/647/An-Automated-tool-for-creating-ACOs
如果将build_acl函数添加到AppController,则可以从任何控制器运行它,并为您生成ACO。它在使用ACL的应用程序中总能很好地工作。
答案 2 :(得分:0)
创建ACO记录的想法是,如果项目结束(意味着没有创建新操作),则不需要在acos数据表中插入任何内容。这些方法旨在被调用一次或仅被调用几次。
然后由您来决定放置这些代码行的位置,因为无论如何您可能会在之后删除它们。
或者,要填充acos数据表,您还可以使用此插件http://www.alaxos.net/blaxos/pages/view/plugin_acl自动检测新操作并建议相应地完成acos数据表。