2011-12-15 2 views

ответ

3

Существует хорошая документация о том, как включить Yii's access control filter для действия контроллера на направляющей. Вам нужно будет сделать действие контроллера, которое отображает статическое представление, и ограничить доступ к этому действию на основе учебника.

+0

Спасибо за это; Я узнал довольно немного, просматривая вашу ссылку и раздел фундамента: http://www.yiiframework.com/doc/guide/1.1/en/basics.controller –

+0

@Bob: Приятно помочь. Почитайте как можно больше этого руководства, как вы можете ассимилироваться (я делал это по частям), это очень полезно. – Jon

3

Вы должны создать действие внутри контроллера, скажет public function actionStaticpage() и:

Это действие будет обрабатывать вид рендеринг статичного содержания вы можете показать, то есть некоторые инструкции/чаво для зарегистрированных пользователей, учебник и т.д. например:

public function actionStaticpage() { 
    $this->render('faq'); 
} 

Вы теперь должны указать, что это действие предназначено для просмотра только для зарегистрированных пользователей. Вы можете выполнить это, используя функцию вашего контроллера accessRules(). Это было бы примерно так:

public function accessRules() 
{ 
    return array(
     array('allow', // allow authenticated user to perform these actions 
      'actions'=>array('staticpage'), 
      'users'=>array('@'), 
     ), 
    ); 
} 

И все. Вы также можете сделать свою статическую страницу более динамичной, например, имея параметр внутри нее, указав, какой статический контент вы хотите отобразить public function actionStaticpage($page), а затем с помощью switch или if инструкций для корректного отображения содержимого.