如何在Yii2中获取模型实例的URL

时间:2015-05-29 12:36:51

标签: url yii2 polymorphic-associations

我有多态关联:

public function getImageable()
{
    $classname = 'app\\models\\' . $this->imageable_type;
    return $this->hasOne( $classname, ['id' => 'imageable_id'] );
}

可以返回不同模型的实例。我需要在索引视图中呈现imageable模型实例的链接。我怎样才能做到这一点?我需要一些东西,它给我view的{​​{1}}动作的URL,它不是当前的控制器。

imageable_type

但我的问题是,我如何从Url:to( $controllerId . '/view', 'id' => $this->imageable_id ) 中确定controllerId

1 个答案:

答案 0 :(得分:0)

$ classname是一个字符串。

建立一个

function getImageableName() {
   return  'app\\models\\' . $this->imageable_type;
}

返回您需要的名称

 Url::to($model->getImageableName())