ohhink / relation
User Hierarchical Relationship
Installs: 5
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:lib
README
快速创建层级架构,可用于上下级明确,多层级的任意应用
本拓展包运行基础环境:
- Php >= 8.0
- Laravel Version >= 8.6
内容列表
背景
在实际开发中,经常会碰到多层级的组织架构。例如:
A 项目 -> B 项目 -> C 项目 -> D 项目 ... -> Z 项目 表示:Z项目属于A项目的N级子项目
当Z向上找A,或者A向下找Z的时候,如果处理不当,任务的时间复杂度就会变成O(N)。
此拓展包可将上述情况的时间复杂度变为O(1),并提供相应接口,实现隐式调用。
安装
在项目根目录运行 composer
$ composer require ohhink/relation
根目录下运行资源发布,此命令会增加配置文件(relationship.php
)
$ php artisan vendor:publish
根目录下运行数据库迁移填充命令
# run autoload first
$ composer dump-autoload
$ php artisan migrate
向 User 模型添加 HasRelationship
Trait
<?php namespace App\Models; use Ohh\Relation\App\Models\Traits\HasRelationship; class User extends Authenticatable { use HasApiTokens, HasFactory, Notifiable, HasRelationship; }
至此,安装完毕
使用说明
维护者
如何贡献
非常欢迎你的加入! 有任何问题或者想要贡献代码,请提交 issue
使用许可
MIT © OhhInk