lispa / amos-tag
此软件包最新版本(1.10.0)没有可用的许可信息。
AMOS TAG 系统
1.10.0
2023-05-23 10:48 UTC
Requires
- php: >=5.4.0
- creocoder/yii2-nested-sets: 0.9.*
- lispa/yii2-tree-manager: ~2.0.0
- open20/amos-admin: >=1.8
- open20/amos-core: ~1.9
- open20/amos-dashboard: ~1.5
- open20/amos-layout: ^1.11.1
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-23 13:55:56 UTC
README
#Amos Tag
标签和兴趣区域扩展。
安装
- 安装此扩展的首选方式是通过 composer。
运行以下命令之一
composer require open20/amos-tag
或将其添加到您的 composer.json
文件的 require 部分。
"open20/amos-tag": "dev-master"
将模块添加到后端主配置中
-
要启用用户个人资料兴趣区域(与内容标签匹配的标签),需要安装 amos-cwh
'modules' => [ 'tag' => [ 'class' => 'open20\amos\tag\AmosTag', 'modelsEnabled' => [ /** * Add here the classnames of the models for whose you want to enable tags * (i.e. 'open20\amos\news\models\News') */ ] ], ],
-
应用迁移
-
a. amos-tag 迁移
或将此行添加到控制台的迁移配置中
php yii migrate/up --migrationPath=@vendor/open20/amos-tag/src/migrations
配置
return [ . . . '@vendor/open20/amos-tag/src/migrations', . . . ];
标签管理适用于管理员角色 - 网址 PlatformUrl /tag/manager。在标签管理器中,您可以
添加新的树或标签
- 为特定模型启用标签树(通过根选择) - 对所有角色(rbac)或指定的角色
- 更改树设置,例如,根可见将允许用户在 TagWidget 中选择所有标签(见下文)
- 小部件
Amos Tag 提供了两个小部件
Amos Tag 提供了两个小部件
- TagWidget open20\amos\tag\widgets\TagWidget
绘制标签树以选择模型的值。在表单中使用示例
echo open20\amos\tag\widgets\TagWidget::widget([ 'model' => $model, 'attribute' => 'tagValues', 'form' => \yii\base\Widget::$stack[0], 'singleFixedTreeId' => $treeRoot, 'id' => 'third-tree', 'hideHeader' => true ]);
在搜索表单中,您可以使用相同的组件,并带有选项
$params = \Yii::$app->request->getQueryParams(); echo \open20\amos\tag\widgets\TagWidget::widget([ 'model' => $model, 'attribute' => 'tagValues', 'form' => $form, 'isSearch' => true, 'form_values' => isset($params[$model->formName()]['tagValues']) ? $params[$model->formName()]['tagValues'] : [] ]);
如果未指定 singleFixedTreeId,则将考虑 $model 的所有启用了的树(表 tag_models_auth_items_mm)。现在 singleFixedTreeId 可以是一个数组(在 singleFixedTreeId 中的标签根将被考虑)。
- ShowTagsWidget open20\amos\tag\widgets\ShowTagsWidget
绘制模型的选定标签(在查看模式下)。可以指定一个树(属性 'rootId')或一组树(属性 'rootIdsArray')以显示;如果没有指定,将考虑模型的全部启用了的树。示例
<?= \open20\amos\tag\widgets\ShowTagsWidget::widget([
'model' => $model,
'rootId' => $rootId
]) ?>