ホームページ >PHPフレームワーク >Laravel >Laravel管理者は分類ツリー/モデルツリーを実装します
モデルの変更 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 チュートリアル "
以上がLaravel管理者は分類ツリー/モデルツリーを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。