В CakePHP, где я бы поставил метод, который выполняет проверку на пользователя сеанса?

Предпосылки: У меня есть метод levelCheck() который сравнивает уровень текущего пользователя с несколькими параметрами и возвращает true или false. Мне нужно иметь доступ к этому методу с любого контроллера, и я также хотел бы позвонить ему внутри помощника для использования в меню и т. Д.


Вопрос: Из-за гибкости Cake я могу назвать почти что угодно почти из любого места с Cake. Где правильное место для этого? В пользовательском сеансе (расширенный)? В AppController? Новый компонент, работающий с текущим пользователем? В UserModel или User Controller?

Важным здесь является то, как я (или другие) определяю правильное местоположение для такой вещи в будущем?

    Поместите этот метод в AppController

     class AppController extends Controller { function levelCheck(){ # whatever } } 

    Это правильное место этого действия. Поскольку AppController расширен во всем контроллере, поэтому этот метод можно вызвать с помощью текущего объекта контроллера, который равен $ this-> levelCheck ().

    В AppController

     function beforeFilter() { $this->custome_componnetst_name->levelCheck(parameters.....); /*action*/ }