我們使用tp或者yii2的時候,會將網站的前台和后台按照模塊分組。yii2的高級模板已經幫我們划分好了,tp系列框架需要自己配置分組。那么laravel5.2該怎么划分這樣的模塊呢?
首選在 app\http\controllers文件夾下,新建 Admin和Home文件夾。這樣,我們admin后台的代碼全部寫在Admin文件夾下,前台文件都放在Home文件夾下。下面來看看routes.php如何划分路由吧:
routes.php
<?php /* |-------------------------------------------------------------------------- | Application Routes |-------------------------------------------------------------------------- | | Here is where you can register all of the routes for an application. | It's a breeze. Simply tell Laravel the URIs it should respond to | and give it the controller to call when that URI is requested. | */ //默認控制器 Route::get('/', 'Home\IndexController@index'); //前台路由組 Route::group(['namespace' => 'Home'], function(){ // 控制器在 "App\Http\Controllers\Home" 命名空間下 Route::get('/', [ 'as' => 'index', 'uses' => 'IndexController@index' ]); }); //后台路由組 Route::group(['namespace' => 'Admin', 'prefix' => 'admin'], function(){ // 控制器在 "App\Http\Controllers\Admin" 命名空間下 Route::get('/', [ 'as' => 'index', 'uses' => 'IndexController@index' ]); });
設置了命名空間,admin后台控制器,統一加了admin前綴。並且設置了默認訪問的控制器,Home文件夾下的Index控制器的index方法。
Home\IndexController.php
<?php /** * author: NickBai * createTime: 2017/2/6 0006 上午 9:05 */ namespace App\Http\Controllers\Home; use App\Http\Controllers\Controller; class IndexController extends Controller { public function index() { return 'this is home'; } }
Admin\IndexController.php
<?php /** * author: NickBai * createTime: 2017/2/6 0006 上午 9:03 */ namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; class IndexController extends Controller { public function index() { return 'this is admin'; } }
此時訪問 domain(你的域名)即可訪問前台,domain/admin 即可訪問admin后台