arogachev/yii2-tree
Composer 安装命令:
composer require arogachev/yii2-tree
包简介
Database tree structures management for Yii 2 framework
README 文档
README
Database tree structures management for Yii 2 framework
Currently it's Nested Sets management extension based on:
Contents:
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist arogachev/yii2-tree
or add
"arogachev/yii2-tree": "*"
to the require section of your composer.json file.
Features
- Basic actions with tree nodes: creating, renaming, moving, deleting
- Saving state of nodes (opened / closed)
- Links for updating node
Usage
Add this to application config:
'controllerMap' => [ 'tree' => 'arogachev\tree\controllers\TreeController', ],
Attach additional behavior along with NestedSetsBehavior to your model:
use arogachev\tree\behaviors\NestedSetsManagementBehavior;
/** * @inheritdoc */ public function behaviors() { return [ NestedSetsBehavior::className(), NestedSetsManagementBehavior::className(), ]; }
The last step is display widget:
use arogachev\tree\widgets\NestedSets; use frontend\modules\department\models\Department;
<?= NestedSets::widget([ 'modelClass' => Department::className(), ]) ?>
Behavior configuration
nameAttribute - string, the name of attribute storing the name of node. Defaults to name.
saveState - boolean, save state of nodes (opened / closed). Defaults to false.
isOpenedAttribute - string, the name of attribute storing if the node opened or closed.
Used together with saveState. Defaults to is_opened.
Widget configuration
modelClass - string, the full model class including namespace of managed model. Required.
updateUrl - string, url for updating model in separate page.
Will be processed by yii\helpers\Url::to().
jsTreeOptions - array, options for JsTree widget. Example:
'jsTreeOptions' => [ 'clientOptions' => [ 'core' => [ 'strings' => [ 'New node' => 'Новый отдел', ], ], ], ],
arogachev/yii2-tree 适用场景与选型建议
arogachev/yii2-tree 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 2.1k 次下载、GitHub Stars 达 22, 最近一次更新时间为 2015 年 05 月 04 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「tree」 「Active Record」 「nested set」 「widget」 「nested sets」 「yii2」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 arogachev/yii2-tree 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 arogachev/yii2-tree 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 arogachev/yii2-tree 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Propel2 is an open-source Object-Relational Mapping (ORM) for PHP 5.5 and up.
jsTree widget for yii2
PHP Interface for Babel Street Text Analytics
A Symfony extension to get active class base on current bundle/controller/action
LDAP user provider bundle for Symfony 6.4
Doctrine2 behavior traits - slowhop fork
统计信息
- 总下载量: 2.1k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 22
- 点击次数: 12
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2015-05-04