Laravel - 后台模版、菜单表与路由定义

后台模版、菜单表与路由定义-start

  • 后台模版
    • 标准的规范是在resources/views 下面新建一个 admin文件夹,然后在admin 文件夹下新建一个 layouts 文件夹,后台的模版放在这个文件夹内。
    • 在layouts文件夹内新建一个admin.blade.php 文件,把后台的模版放到这个文件夹内,然后用 @yield() 方法 来占位 内容空间、左侧菜单空间、css文件空间、js文件空间。
    • 在admin文件夹下新建别的文件夹,比如 home文件夹,在文件夹内新建index.blade.php 文件,在文件内 用 @extends('layouts.admin') 方法继承主模版,然后再用@section('content') 内容 @endsection 方法包住要改变的代码,即可实现后台页面的分离。
  • 菜单表
    • 在创建model的同时,创建迁移文件:
      php artisan make:model Models/Menu -m
    • 在database\ migrations 文件夹下找到刚刚创建的迁移文件,在up方法中输入以下内容:
      Schema::create('menus', function (Blueprint $table) {
          $table->increments('id');
          $table->string('name')->default('')->comment('菜单名称');
          $table->string('icon')->default('')->comment('菜单图标');
          $table->string('parent_id')->default('')->comment('父级菜单ID');
          $table->string('url')->default('')->comment('菜单链接');
          $table->string('heightlight_url')->default('')->comment('菜单高亮');
          $table->tinyInteger('sort')->unsigned()->default(0)->comment('排序');
          $table->timestamps();
      });
    • 生成表结构:php artisan migrate
  • 路由的配置
    • 路由配置最清晰,最好的方法是把每个控制器配置一个路由文件,方法如下:
      1. 在Http目录下新建一个Routes文件夹,在文件夹下新建一个HomeRoute.php
        在这个文件内编写关于Home控制器的路由:
        <?php
        $route->get('/','HomeController@index');
        $route->resource('home','HomeController@index');
      2. 在app\Http\routes.php文件内引入刚才编写的 HomeRoute.php文件即可:
        Route::get('/home', ['middleware'=>['auth'],'uses'=>'HomeController@index']);
        Route::group(['prefix'=>'admin','namespace'=>'Admin','middleware'=>['auth']],function ($route){
        require(__DIR__.'/Routes/HomeRoute.php');
        });

        后台模版、菜单表与路由定义-end

本作品采用《CC 协议》,转载必须注明作者和本文链接
老郭博客:laughing: 个人博客地址:www.phpsix.com
PHPSIX
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

直接用标签条用啊!现在搞得这么复杂!!

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!