今天来说一下“博客系统开发-后台模块创建及相关路由配置”,继昨天‘博客开发-框架安装及网站配置’,我们今天来写后台模块、配置强制路由模式、创建后台公共控制器、首页控制器、登录控制器及相关路由配置。
一、创建后台模块
在phpstrom中使用快捷键F5复制index模块为admin模块,这样我们的application下就存在两个模块【index和admin】模块。如下图:
二、修改配置文件
我们修改application下面的config文件夹内的app.php文件,将100行、104行配置更改为true。如下图:
三、创建后台控制器
将admin模块下controller下的index.php内的命名空间更改,如下:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/5/9 0009
* Time: 下午 9:37
*/
namespace app\admin\controller;
class Index extends Common
{
/**
* 后台首页
* @return \think\response\View
*/
public function index()
{
return view();
}
}
你会发现控制器里面继承了Common控制器,是的,我们需要在admin模块下的controller中创建Common控制器,如下:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/5/9 0009
* Time: 下午 9:37
*/
namespace app\admin\controller;
use think\App;
use think\Controller;
class Common extends Controller
{
}
然后创建Login控制器,代码如下:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/5/9 0009
* Time: 下午 9:38
*/
namespace app\admin\controller;
use think\Controller;
class Login extends Controller
{
/**
* 登录页面
* @return \think\response\View
*/
public function index()
{
return view();
}
}
编写Common控制器中的逻辑代码,如下:
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/5/9 0009
* Time: 下午 9:37
*/
namespace app\admin\controller;
use think\App;
use think\Controller;
class Common extends Controller
{
public function __construct(App $app = null)
{
parent::__construct($app);
$userName = session('userName','','thinkBlog');
if($userName){
$this->assign('userName',$userName);
}else{
$this->redirect('/admin/login.html');
}
}
}
四、路由规则
我们采用路由分组模式编写全站路由规则(对请求地址进行限定):
<?php
Route::group('admin', function () {
Route::get('', 'admin/Index/index'); //后台首页
Route::group('login', function () {
Route::get('/', 'admin/Login/index')->ext('html'); //登录
Route::post('getLogin', 'admin/Login/login')->ext('html'); //登录处理
Route::get('code', 'admin/Login/code')->ext('html'); //验证码
Route::post('out', 'admin/Login/out')->ext('html'); //退出
});
});
代码已经上传至码云,前往查看