Литиевый прямой запрос

Метод контроллера redirect () в Lithium выполняет фактическое перенаправление HTTP. Но есть ли способ просто переслать запрос другому контроллеру / действию без перенаправления HTTP?

Например, я хочу добавить слой аутентификации, а не перенаправлять пользователя на "/ Авт / войти в систему» страница, макет входа и шаблон отображаются, а не содержимое страницы, которую они запрашивали. Затем, когда они отправляют форму и аутентифицируются, ониуже на странице, которую они просили. Zend Framework имеет нечто подобное с методом _forward ().

Спасибо!

Ответы на вопрос(1)

Нет способа, в основном потому, что вы можете сделать это примерно в двух строках кода:

<!--?php

    namespace my_app\controllers;

    use lithium\core\Libraries;

    class PostsController extends \lithium\action\Controller {

        public function index() {
            $forward = Libraries::instance("controllers", "Auth", [
                'request' =--> $this->request
            ]);
            return $forward($this->request, ['action' => 'login']);
        }
    }
?>
 AKnox02 июл. 2014 г., 00:25
для меня вместо того, чтобы возвращать $ forward, мне нужно было сделать рендер прямо там, чтобы заставить вещи работать `` `$ forward->рендеринга (); выход(); `` `
 Martin Samson05 февр. 2013 г., 16:30
Я могу'не верьте, насколько это чисто / сексуально! (Не каламбур)

Ваш ответ на вопрос