首页 > 开发 > php > 正文

yii2高版-博客-前后端分离

2017-07-06 10:39:14  来源:慕课网

前后端分离,可以避免前后端受同一用户的登录登出影响
1,数据库 user表作为前端用户表
新增后台管理员表admin,表结构参照user表

2,将common/models/User.php重命名为 UserModel.php
默认为 user 表

并在当前目录下copy一份,命名为AdminModel.php
修改:引用表名称为 admin 表

public static function tableName()    {        return '{{%admin}}';    }

3,将common/models/LoginForm.php复制到backend/models/LoginForm.php 修改:

namespace backend\models; use common\models\AdminModel;......  protected function getUser()  {      if ($this->_user === null) {          $this->_user = AdminModel::findByUsername($this->username);      }         return $this->_user;  }

4,将common/models/LoginForm.php复制到frontend/models/LoginForm.php 修改:

namespace frontend\models;use common\models\UserModel;

5, 删除common/models/LoginForm.php
6,修改backend/config/main.php

‘components‘ => [        ‘user‘ => [            ‘identityClass‘ => ‘common\models\AdminModel‘,            ‘enableAutoLogin‘ => true,        ],        ...]

7,修改frontend/config/main.php

‘components‘ => [        ‘user‘ => [            ‘identityClass‘ => ‘common\models\UserModel‘,            ‘enableAutoLogin‘ => true,        ],        ...]

8,修改控制器backend/controllers/SiteController.php
use backend\models\LoginForm;
9,修改控制器frontend/controllers/SiteController.php
use frontend\models\LoginForm;

前后台分离的功能实现!