Задать url для actionColumn в gridView

Всем привет, подскажите, как можно задать свой 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. В общем вопрос в том, как в любую из этих функций передать дополнительные параметры?

Вопрос решен. Помогли в русском сообществе yii.




'buttons' => [

   'update' => function ($url, $model, $key) use($myVariable) {

    

      return Html::a('', ['/module/controller/action', 'param' => $myVariable] ['class' => 'glyphicon glyphicon-pencil']);


   }

],



Оказывается для анонимных функций можно использовать use для присоединения чего либо из родительской области видимости (правда я так и не понял в деталях, что именно является родительской областью видимости).