Закрытый сайт

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Alex Bel
Сообщения: 12
Зарегистрирован: 2012.01.11, 22:12

Закрытый сайт

Сообщение Alex Bel »

Как реализовать вход на сайт только для зарегистрированных пользователей. Делать фильтры в контроллёрах не хочется, пытаюсь сделать на базе Yii::app()->catchAllRequest, но перенаправление происходит только на конкретное действие. Как сделать что бы был доступ ко всем действиям контроллёра,
index.php

Код: Выделить всё

$app = Yii::createWebApplication($config);

if(Yii::app()->user->isGuest) {
    Yii::app()->catchAllRequest = array('account');
} else {
    Yii::app()->defaultController = 'site';
}

$app->run();
 
R3D3
Сообщения: 352
Зарегистрирован: 2010.04.11, 14:52

Re: Закрытый сайт

Сообщение R3D3 »

А почему не хочется делать фильтры? accessControl очень хорошо справляется со своей задачей.

Еще можно добавить код проверки на гостя в beforeAction() класса контроллера, от которого наследуются все ваши контроллеры.
Yii Jabber Conference: [email protected]
TM123
Сообщения: 608
Зарегистрирован: 2011.06.09, 11:18

Re: Закрытый сайт

Сообщение TM123 »

Сделать базовый контроллер в котором один раз написать фильтр что только авторизованным и от этого контроллера наследовать всех остальных. Мне кажется самый правильны и удобный способ, я так и сделал, а в контроллерах где права отличные от по умолчанию просто перекрываю фильтр.
Ответить