当前位置:首页 > CMS教程 > 其它CMS > 列表

laravel admin实现分类树/模型树的示例代码

发布:smiling 来源: PHP粉丝网  添加日期:2022-03-14 15:18:57 浏览: 评论:0 

这篇文章主要介绍了laravel admin实现分类树/模型树,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下。

修改模型Category.php

  1. <?php 
  2.  
  3. namespace App\Admin\Models; 
  4.  
  5. use Encore\Admin\Traits\AdminBuilder; 
  6. use Encore\Admin\Traits\ModelTree; 
  7. use Illuminate\Database\Eloquent\Model; 
  8.  
  9. class Category extends Model 
  10.  use ModelTree, AdminBuilder; 
  11.  
  12.  protected $table = 'category'
  13.  
  14.  public function __construct(array $attributes = []) 
  15.  { 
  16.   parent::__construct($attributes); 
  17.         //这里根据自己的字段修改 
  18.   $this->setParentColumn('parent_id'); 
  19.   $this->setOrderColumn('sort'); 
  20.   $this->setTitleColumn('name'); 
  21.  } 
  22.  } 

修改控制文件CategoryController.php

  1. <?php 
  2.  
  3. namespace App\Admin\Controllers; 
  4.  
  5. use App\Admin\Models\Category; 
  6. use Encore\Admin\Controllers\AdminController; 
  7. use Encore\Admin\Facades\Admin; 
  8. use Encore\Admin\Layout\Content; 
  9. use Encore\Admin\Show; 
  10.  
  11. class CategoryController extends AdminController 
  12.  /** 
  13.   * Title for current resource. 
  14.   * 
  15.   * @var string 
  16.   */ 
  17.  protected $title = '商品分类管理'
  18.  
  19.  public function index(Content $content
  20.  { 
  21.   return Admin::content(function ($content) { 
  22.    $content->header('商品分类管理'); 
  23.    $content->body(Category::tree(function ($tree) { 
  24.     $tree->branch(function ($branch) { 
  25.      $src = config('admin.upload.host') . '/' . $branch['image']; 
  26.      $logo = "<img src='$src' style='max-width:30px;max-height:30px' class='img'/>"
  27.  
  28.      return "{$branch['id']} - {$branch['name']} $logo"
  29.     }); 
  30.    })); 
  31.   }); 
  32.  } 
  33.     //下面是自己的代码 
  34.     //....... 
  35.  } 

添加路由app/Admin/routes.php

$router->resource('categories',CategoryController::class);

select中使用分类树

$form->select('parent_id', __('Parent id'))->options(Category::selectOptions())->default(1);

Tags: laravel分类树 laravel模型树

分享到: