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

2020-11-02 14:32:13 浏览数 (1)

修改模型Category.php

代码语言:javascript复制
<?php

namespace AppAdminModels;

use EncoreAdminTraitsAdminBuilder;
use EncoreAdminTraitsModelTree;
use IlluminateDatabaseEloquentModel;

class Category extends Model
{
 use ModelTree, AdminBuilder;

 protected $table = 'category';

 public function __construct(array $attributes = [])
 {
  parent::__construct($attributes);
		//这里根据自己的字段修改
  $this- setParentColumn('parent_id');
  $this- setOrderColumn('sort');
  $this- setTitleColumn('name');
 }
 }

修改控制文件CategoryController.php

代码语言:javascript复制
<?php

namespace AppAdminControllers;

use AppAdminModelsCategory;
use EncoreAdminControllersAdminController;
use EncoreAdminFacadesAdmin;
use EncoreAdminLayoutContent;
use EncoreAdminShow;

class CategoryController extends AdminController
{
 /**
  * Title for current resource.
  *
  * @var string
  */
 protected $title = '商品分类管理';

 public function index(Content $content)
 {
  return Admin::content(function ($content) {
   $content- header('商品分类管理');
   $content- body(Category::tree(function ($tree) {
    $tree- branch(function ($branch) {
     $src = config('admin.upload.host') . '/' . $branch['image'];
     $logo = "<img src='$src' style='max-width:30px;max-height:30px' class='img'/ ";

     return "{$branch['id']} - {$branch['name']} $logo";
    });
   }));
  });
 }
	//下面是自己的代码
	//.......
 }

添加路由app/Admin/routes.php

代码语言:javascript复制
$router- resource('categories',CategoryController::class);

select中使用分类树

代码语言:javascript复制
$form- select('parent_id', __('Parent id'))- options(Category::selectOptions())- default(1);

总结

到此这篇关于laravel admin实现分类树/模型树的示例代码的文章就介绍到这了,更多相关laravel admin 分类树 模型树内容请搜索ZaLou.Cn

0 人点赞