1. 程式人生 > 程式設計 >laravel admin實現分類樹/模型樹的示例程式碼

laravel admin實現分類樹/模型樹的示例程式碼

修改模型Category.php

<?php

namespace App\Admin\Models;

use Encore\Admin\Traits\AdminBuilder;
use Encore\Admin\Traits\ModelTree;
use Illuminate\Database\Eloquent\Model;

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

<?php

namespace App\Admin\Controllers;

use App\Admin\Models\Category;
use Encore\Admin\Controllers\AdminController;
use Encore\Admin\Facades\Admin;
use Encore\Admin\Layout\Content;
use Encore\Admin\Show;

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

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

select中使用分類樹

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

總結

到此這篇關於laravel admin實現分類樹/模型樹的示例程式碼的文章就介紹到這了,更多相關laravel admin 分類樹 模型樹內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!