Cakephp, разрешить пользователю выбирать публичный доступ к странице, контролируемой аутентификацией - PullRequest
0 голосов
/ 23 января 2012

Я использую компонент CakePHP Auth, и мне интересно, как лучше всего разрешить пользователю решать, предоставлять ли он публичный доступ к своей собственной странице, т.е. / Пользователь / имя пользователя / общественности. Так что я бы поставил галочку на странице своего профиля и сохранил бы 1 или 0 в БД для поля «Public». Однако как лучше всего разрешить компоненту Auth условно разрешить доступ к этой странице?

1 Ответ

2 голосов
/ 23 января 2012

Это не совсем работа для компонента Auth, но для пользовательского кода.

public function userProfile($username) {
    $profile = $this->Profile->find('first', array('conditions' => array(
        'username' => $username,
        'public'   => true
    )));
    if (!$profile) {
        $this->cakeError('error404');
    }
    ...
}

Вы могли бы использовать обратный вызов isAuthenticated, но обход условия стал бы немного грязным. Компонент Auth обрабатывает общую аутентификацию, этот случай слишком специализирован, чтобы его можно было чисто обработать с использованием Auth.

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