Yii2 activeDropDownList基础

时间:2015-07-23 21:56:21

标签: yii2

我是Yii2的新手但不是MVC(尝试将我的注意力从MS转移到Yii2)。我使用gii从我的数据库中搭建了一个应用程序。我有一个名为track的表我有一个名为music_category的表。通过名为track_has_music_category的链接表有一个n:n关系。我的跟踪模型(由gii搭建)有一个功能

 public function getMusicCategories()
{
    return $this->hasMany(MusicCategory::className(), ['id' => 'music_category_id'])->viaTable('track_has_music_category', ['track_id' => 'id']);
}

但这是为了检索已经“链接”到此曲目的类别。所以我想我需要像

这样的东西
<?= Html::activeDropDownList(theCategoryModel (syntax here??), 'id', ArrayHelper::map(theCategoryModel->findAll(),'id', ''description)) ?>

嗯,就像那样。我觉得好像在线参考可以用一些有用的例子。

任何帮助都非常感激。

干杯 标记

1 个答案:

答案 0 :(得分:2)

假设我们想要将一些类别附加到轨道模型($ model):

echo Html::activeCheckboxList($model, 'musicCategories', ArrayHelper::map(MusicCategory::findAll(),'id', ''description))

我们在这里使用activeCheckboxList因为它是一个多重关系。 虽然您需要添加额外的$ model逻辑来保存这些关系。 看看这个How do I work with many-to-many relations in Yii2