【laralve项目】@14 laravel-admin处理后台分类,选择上级模型树(2)

简介: 【laralve项目】@14 laravel-admin处理后台分类,选择上级模型树

然后里边放置下面内容

<?php
namespace App\Observers;
use Log;
use App\Models\GoodsCategory;
class GoodsCategoryObserver
{
    public function creating(GoodsCategory $goodsCategory) {
        //如果创建的是一个根类目
        if (is_null($goodsCategory->parent_id)) {
            //讲层级设置为0
            $goodsCategory->level = 0;
            //将path 设为 -
            $goodsCategory->possess = '-';
        }else {
            //将层级设为父类目层级 + 1
            $goodsCategory->level = $goodsCategory->parent->level +1;
            Log::info($goodsCategory->level);
            // 将path 设为父级目的的PATH 追加父级的id 并最后 跟上一个  -  分隔符
            $goodsCategory->possess = $goodsCategory->parent->possess.$goodsCategory->parent_id.'-';
        }
    }
    /**
     * Handle the goods category "created" event.
     *
     * @param  \App\GoodsCategory  $goodsCategory
     * @return void
     */
    public function created(GoodsCategory $goodsCategory)
    {
    }
    /**
     * Handle the goods category "updated" event.
     *
     * @param  \App\GoodsCategory  $goodsCategory
     * @return void
     */
    public function updated(GoodsCategory $goodsCategory)
    {
        //
    }
    /**
     * Handle the goods category "deleted" event.
     *
     * @param  \App\GoodsCategory  $goodsCategory
     * @return void
     */
    public function deleted(GoodsCategory $goodsCategory)
    {
        //
    }
    /**
     * Handle the goods category "restored" event.
     *
     * @param  \App\GoodsCategory  $goodsCategory
     * @return void
     */
    public function restored(GoodsCategory $goodsCategory)
    {
        //
    }
    /**
     * Handle the goods category "force deleted" event.
     *
     * @param  \App\GoodsCategory  $goodsCategory
     * @return void
     */
    public function forceDeleted(GoodsCategory $goodsCategory)
    {
        //
    }
}

然后需要注册一个服务

app\Providers\ModelObserverProvider.php

php artisan make:provider ModelObserverProvider

里边添加这些代码

<?php
namespace App\Providers;
use App\Observers\GoodsCategoryObserver;
use App\Models\GoodsCategory;
use Illuminate\Support\ServiceProvider;
class ModelObserverProvider extends ServiceProvider
{
    /**
     * Register services.
     *
     * @return void
     */
    public function register()
    {
        //
    }
    /**
     * Bootstrap services.
     *
     * @return void
     */
    public function boot()
    {
        GoodsCategory::observe(GoodsCategoryObserver::class);
    }
}

屏幕快照 2022-05-16 上午11.57.09.png

屏幕快照 2022-05-16 下午12.02.35.png屏幕快照 2022-05-16 下午12.02.42.png

相关文章
|
PHP 数据库
【laralve项目】@14 laravel-admin处理后台分类,选择上级模型树(1)
【laralve项目】@14 laravel-admin处理后台分类,选择上级模型树
192 0
【laralve项目】@14 laravel-admin处理后台分类,选择上级模型树(1)
【laralve项目】@14 laravel-admin处理后台分类,选择上级
【laralve项目】@14 laravel-admin处理后台分类,选择上级
101 0
【laralve项目】@14 laravel-admin处理后台分类,选择上级
|
PHP
【laravel项目】@16 修改后台分类
【laravel项目】@16 修改后台分类
109 0
【laravel项目】@16 修改后台分类
11、【分类模块管理】——修改分类名字接口开发
接口逻辑,管理员在修改分类名字的时候,我们根据操作分类的Id来对分类名字进行修改。关于在首先我们判断登陆者是否是管理员,我们在10、【分类模块管理】——添加分类接口开发有说明 controller: //管理员更新品类 @RequestMapping("set_category_name.
1086 0
|
9月前
|
算法 前端开发 JavaScript
若依框架---数据转树状层级
若依框架---数据转树状层级
610 0
|
算法
13、【分类模块管理】——查询节点和递归查找功能开发
该接口是我们查询出所有的结点个子节点,在查询的时候利用父节点parentId属性来进行递归查询,当子节点不再有的时候,我们就结束递归查询,然后将查询到的结果全部返回给客户端。
816 0
|
Java 开发者
后台分类模块之相关类之创建 | 学习笔记
快速学习后台分类模块之相关类之创建
108 0
|
Java 开发者
后台分类模块之相关类之创建 | 学习笔记
快速学习后台分类模块之相关类之创建
108 0
|
存储 Java 数据库
后台分类模块之相关类创建| 学习笔记
快速学习后台分类模块之相关类创建。
120 0

热门文章

最新文章