如何在Yii中创建只有登录用户可以查看的单个静态页面?
答案 0 :(得分:3)
有很好的文档说明如何为指南启用Yii的access control filter控制器操作。您必须制作一个显示静态视图的控制器操作,并根据教程限制对该操作的访问。
答案 1 :(得分:3)
您必须在控制器内创建一个操作,例如public function actionStaticpage()
,然后:
此操作将处理您可能想要显示的静态内容的视图呈现,即已记录用户的一些指令/常见问题解答,教程等。例如:
public function actionStaticpage() {
$this->render('faq');
}
您现在必须指定此操作仅针对已登录用户可查看 。您可以使用Controller的函数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
语句显示内容。