laraditz/laravel-tree

使用路径枚举模型实现分层或树形数据库

0.0.1 2021-03-24 04:17 UTC

This package is auto-updated.

Last update: 2024-09-13 06:53:02 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

使用路径枚举模型实现分层或树形数据库。

安装

您可以通过composer安装此包

composer require laraditz/laravel-tree

配置

通过在数据库迁移文件中添加 addLaravelTreeColumns,将树形列添加到您的表中。例如,我们像下面这样将树形列添加到 trees 表中。

 Schema::create('trees', function (Blueprint $table) {
    ...
    $table->addLaravelTreeColumns();
    ...
});

然后,将 TreeNodeTrait 添加到模型中。

use Laraditz\LaravelTree\TreeNodeTrait;

class Tree extends Model
{
    use TreeNodeTrait;
    
}

使用方法

创建根节点。

Tree::create([
    'user_id' => 1
])->asRoot()

创建子节点。

// $tree is the parent object
Tree::create([
    'user_id' => 2
])->asChildOf($tree);

// or
$tree->appendChild([
    'user_id' => 2
]);

更新日志

有关最近更改的更多信息,请参阅 更新日志

贡献

有关详细信息,请参阅 贡献指南

安全性

如果您发现任何与安全相关的问题,请通过电子邮件 raditzfarhan@gmail.com 而不是使用问题跟踪器来报告。

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅 许可证文件