aminsamadzadeh/vispobish
Composer 安装命令:
composer require aminsamadzadeh/vispobish
包简介
tree structure for eloquent models
README 文档
README
Add tree structure to Eloquent models. In this package try to use optimize queries.
Installing
just run below command:
composer require aminsamadzadeh/simorgh
Usage
Create migration.
... public function up() { Schema::table('categories', function (Blueprint $table) { // vispobish pckage $table->string('path')->nullable(); // save path of tree $table->unsignedInteger('parent_id')->nullable(); $table->foreign('parent_id')->references('id')->on('categories'); }); } ...
Add Treeable trait to model.
... use Illuminate\Database\Eloquent\Model; use AminSamadzadeh\Vispobish\Treeable; class Category extends Model { use Treeable; } ...
Named Path
if you want save path with spicial name you can add public $namedPathWith property to your model and add named_path to migration.
... public function up() { Schema::table('categories', function (Blueprint $table) { $table->string('named_path')->unique(); // just used when set $pahtNamedWith }); } ...
... class Category extends Model { use Treeable; public $namedPathWith = 'name'; } ...
Relationship
$cat->parent()get parent$cat->children()get children$cat->descendants()get flatten children of childrens$cat->ancestors()get flatten all parents
aminsamadzadeh/vispobish 适用场景与选型建议
aminsamadzadeh/vispobish 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 11 次下载、GitHub Stars 达 1, 最近一次更新时间为 2020 年 08 月 01 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 aminsamadzadeh/vispobish 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 aminsamadzadeh/vispobish 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 11
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 7
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-08-01