Всем привет, подскажите, как можно задать свой url для actionColumn в gridView в yii2?
На сколько я понимаю для этого там есть две функции, первая:
'buttons' => [
'update' => function ($url, $model, $key) {
return Html::a('', $url, ['class' => 'glyphicon glyphicon-pencil']);
}
],
Здесь можно для ссылки создать свой url или использовать url получаемый функцией в качестве параметра - по умолчанию он создается функцией urlCreator и равен /module/controller/action, либо можно в функции urlCreator, создать свой url:
'urlCreator' => function ($action, $model, $key, $index) {
...
return $updateUrl;
}
Но я хочу создать url типа /test-1/question-1/answer-1, для этого мне не достаточно данных конкретной модели (answer), так как мне нужно знать не только id ответа (answer), но и id вопроса и теста. В само представление я эти параметры передаю, но как их передать в эти функции? В эти функции уже передаются другие параметры, и добавить новые не выходит, да и подменить тоже не получается, если допустим сделать так:
'buttons' => [
'update' => function ($myUrl, $model, $key) {
return Html::a('', $myUrl, ['class' => 'glyphicon glyphicon-pencil']);
}
],
То все равно в функции $myUrl равен не тому url который я создал а url созданному по умолчанию функцией urlCreator. В общем вопрос в том, как в любую из этих функций передать дополнительные параметры?