首先对这个woffle感到抱歉,因为我不确定如何最好地描述这个。基本上我不确定在加载控制器之前如何在引导程序中获取参数,但这里是冗长的版本......
我有一个存储我所有默认资源的acl类。我的所有页面/帖子内容都是一个数据库,我希望管理员能够选择该页面可用的角色。
我知道可以循环访问数据库表并立即将它们全部添加,但我担心这会耗尽资源。我有它的工作,我的访问检查插件可以调用动态权限函数,但我需要获取当前页面ID的参数,并且它的权限是在加载控制器之前设置它。
这是否有意义或者我什么都不担心,我应该立即获得所有页面的资源?
提前感谢阅读我的傻瓜!!
答案 0 :(得分:1)
我实际上通过阅读zend手册找到了我需要的东西! DOH!
我只需要使用$ request-> getParams(),这样我就可以从网址获取帖子ID
然后我可以使用以下方法设置权限
下面是访问检查插件
$params = $request->getParams();
$this->_acl->setDynamicPermissions($params['post_id']);
然后在Acl类
中 public function setDynamicPermissions($id) {
$id = (int)$id;
$page_id = "page-" . $id;
$post = new Model_DbTable_Post();
$restriction = $post->getPostRestriction($id);
$this->add(new Zend_Acl_Resource($page_id));
$this->allow($restriction, $page_id);
}