umbrellio/laravel-ltree

Laravel 的 LTree (Postgres) 扩展


README

Github Status Coverage Status Latest Stable Version Total Downloads Code Intelligence Status Build Status Code Coverage Scrutinizer Code Quality

Laravel 的 LTree 扩展 (PostgreSQL)

安装

运行以下命令进行安装

php composer.phar require umbrellio/laravel-ltree

使用方法

LTreeModelInterface 实现 Eloquent\Model 并使用 LTreeModelTrait

使用 LTreeService 来构建路径

  1. 当创建模型时: createPath(LTreeModelInterface $model)
  2. 当更新模型时: updatePath(LTreeModelInterface $model) 用于更新模型及其子模型的路径
  3. 当删除模型时: dropDescendants(LTreeModelInterface $model) 用于删除子模型

get() 方法返回 LTreeCollection,而不是常用的 Eloquent\Collection

LTreeCollection 有一个 toTree() 方法,可以将平面集合转换为树形结构。

LTreeResourceCollectionLTreeResource,它们接受 LTreeCollection 作为参数,也将非常有用。

作者

由 Korben Dallas 创建。

Supported by Umbrellio