porcelanosa/yii2-related

Yii2 扩展

安装: 20

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:yii2-extension

dev-master 2017-12-04 20:31 UTC

This package is not auto-updated.

Last update: 2024-09-22 08:20:33 UTC


README

yii2-related

Yii2 扩展 - 关联相似实体 最新稳定版本 总下载量

安装

composer require porcelanosa/yii2-related

运行迁移

$ php yii migrate/up --migrationPath=@vendor/porcelanosa/yii2-related/migrations

设置行为

为模型设置行为

model_id_field_name - 主键字段名 model_name_field_name - 名称模型字段名 - 例如,'name' 或 'title' post_name - 发送数据的 POST 属性

public function behaviors()
{
    return [
        'relatedBehavior' => [
            'class' => RelatedBehavior::className(),
            'model_name' => $this::className(),
            'model_id_field_name' => 'id', 
            'model_name_field_name' => 'name',
            'post_name' => 'related_objects',
            'whereCondition' => 'deleted!=1' // Conditions for list of related entities
        ],
    ......
    ]
}    

使用小部件

在管理视图

echo \porcelanosa\yii2related\RelatedWidget::widget(
    [
        'model'        => $model,
        'model_name'   => $model::className(),
        'behaviorName' => 'relatedBehavior',
        'title'        => 'Похожие модели',
        'placeholder'  => 'Выберите похожие модели ...',
    ]
);

用法

获取相关模型

<?
use yii\helpers\Html;
$brand = Brands::findOne(1);
foreach($brand->related as $rel) { 
    echo Html::a($rel->name, $rel->slug); 
    echo '<br>';
}
?>