具体来说,我正在尝试在Module.php文件中使用FlashMessenger插件表单.
现在我Application/Module.php文件中的方法如下所示:
public function checkAcl(MvcEvent $e) {
// code to determine route and role ...
if (!$e->getViewModel()->acl->isAllowed($userRole, $route)) {
$flashMessenger = $e->getController()->plugin('flashMessenger');
$flashMessenger->addMessage('You must be logged in');
// code to redirect to login page ...
}
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为$ e-> getController()返回一个字符串,而不是控制器对象.任何直接访问控制器或插件的帮助表示赞赏.