до перенаправить использовать $this->redirect();
и добавить сообщение с помощью $this->Session->setFlash();
.Я включил ссылки, чтобы показать вам.
РЕДАКТИРОВАТЬ:
Я бы рекомендовал установить флэш-сообщение, а затем сделать перенаправление.Затем на перенаправленной странице отобразите флэш-сообщение с $session->flash();
.
EDIT2:
Поскольку вы не хотите выполнять перенаправление, вам нужно будет сделать что-то подобное.
function view() {
if($this->Acl->check(.....){
//display the page and continue with the view action
}
else {
$this->Session->setFlash("You do not have access to use this feature");
}
}
РЕДАКТИРОВАТЬ 3:
Попробуйте это .Посмотрите на последний пост в ссылке.
Редактировать 4: Попробуйте использовать deny ()
Редактировать 5:
Если я вас понимаюправильно вы хотите использовать beforeFilter, чтобы проверить, есть ли у них доступ, а если нет, то не продолжайте выполнять действия.CakePHP на самом деле не позволяет этого, но есть обходной путь.
function beforeFilter() {
if($this->Acl->check(.....){
//display the page and continue with the view action
}
else {
$this->Session->setFlash("You do not have access to use this feature");
$this->params['action'] = "failedCheck";
}
}
function failedCheck() {
//blah blah blah
}