Cakephp: Маршрутизация и представления по умолчанию - PullRequest
0 голосов
/ 26 декабря 2010

В настоящее время я пытаюсь добавить режим администратора на свой сайт CakePHP.

Я следовал учебному пособию в Интернете и добавил префикс маршрутизации:

Configure::write('Routing.prefixes', array('admin'));

Затем я ввел логини выход из системы.

Я добавил admin_view.ctp и admin_index.ctp в модель, где я хочу ограничить доступ.Поэтому я удалил view.ctp и index.ctp и ожидал, что только администраторы смогут просматривать модель с помощью:

http://xxxx/model/admin/index

Но когда я ввел

http://xxxx/model/index

, появилось представление по умолчанию, чтоневозможно отключить (это позволяет манипулировать моделью).Есть ли стандартный способ отключить все эти представления по умолчанию, или мне нужно создать index.ctp и view.ctp, которые просто показывают сообщения об ошибках?

Ответы [ 2 ]

2 голосов
/ 26 декабря 2010

Если вы хотите запретить определенные действия, вам нужно настроить ACL, который описан здесь . А для аутентификации в вашем контроллере вам нужно что-то вроде этого:

class SomethingsController extends AppController
{
var $components = array('Auth');

//this will allow all users access to the index
//and view methods ( but not any other)
    function beforeFilter() {
            $this->Auth->allow('index','view');
    }

// other actions
}

Надеюсь, это поможет.

0 голосов
/ 26 декабря 2010

Удалить методы контроллера по умолчанию: function index(), view(), add(), edit() and delete(). Удаление шаблонов * .ctp недостаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...