YII2 自带验证函数,在每个控制器的behaviors()方法中。可是实现自由验证和跳转。(默认的一些验证,跳转很麻烦,暂时没有找到跳转到自定义路径的方法。就是验证失败后跳转路径。如果有知道的朋友,可以留意告诉我下,先谢谢啦!)
使用背景:
YII2自带有RABC权限验证插件的,百度一下,使用教程很多。但是感觉太麻烦了,本人项目不需要那么复杂的,主要是还有建表,写的代码太多了,比较懒(这个是主要原因)。
于是自己下一个简单的用户权限验证方法,正对权限比较单一的。如果太复杂的权限建议还是去看看RABC验证吧。
废话不多说,直接上代码:
首先创建一个自定义的验证类
<?php
namespace frontend\filter;
use Yii;
use yii\base\ActionFilter;
use yii\web\Controller as ctrl;
class UserFilter extends ActionFilter
{
public function beforeAction($action)
{
if(parent::beforeAction($action)) // TODO: Change the autogenerated stub 写死了,返回true
{
$user = Yii::$app->user->identity;
if($user->state == 0){
//return ctrl::redirect(['site/msg','msg' => '账户异常,请联系我们。']);
ctrl::redi