博客系统开发-后台模块创建及相关路由配置
今天来说一下“博客系统开发-后台模块创建及相关路由配置”,继昨天‘博客开发-框架安装及网站配置’,我们今天来写后台模块、配置强制路由模式、创建后台公共控制器、首页控制器、登录控制器及相关路由配置。
一、创建后台模块
在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'); //退出 }); });
代码已经上传至码云,前往查看