Как передать & quot; elementId & quot; в генератор штрих-кода в Gridview Yii2?

Я прошел через это:

Но не работает Мой gridView:

<?= GridView::widget([
'dataProvider' => new yii\data\ActiveDataProvider(['query' => $model->getLibBookMasters()]),
'summary' => '',
'columns' => [
['class' => 'yii\grid\SerialColumn'],

'lbm_book_no',
[
'attribute' => 'lbm_barcode_no',
//'type' => 'raw',
'value'=> function($model){
return \barcode\barcode\BarcodeGenerator::widget(
[
'elementId' => 'lbm_barcode_no',
'value'=> 'lbm_barcode_no',
'type'=>'ean13',

]);},
],
],
]); ?>

Мне нужно пройти elementId которые делают свое дело, но не нашли его.
Я только что установил Barcode Generator и не знаю, как с ним играть.

2

Решение

Вам нужно пройти разные elementIds. Поскольку ваш код в настоящее время вы передаете буквальный 'lbm_barcode_no' вместо значения lbm_barcode_no атрибут ваших моделей. Кроме того, вы должны создать divгде штрих-код должен быть показан и установить format колонны в raw или же html:

'columns' => [
['class' => 'yii\grid\SerialColumn'],

'lbm_book_no',
[
'attribute' => 'lbm_barcode_no',
'format' => 'raw',
'value'=> function($model){
return yii\helpers\Html::tag('div', '', ['id' => 'barcode-'.$model->lbm_barcode_no]).
\barcode\barcode\BarcodeGenerator::widget([
'elementId' => 'barcode-'.$model->lbm_barcode_no,
'value'=> $model->lbm_barcode_no,
'type'=>'ean13',
]);
},
],
],

Я поставил теги с префиксом barcode- чтобы избежать столкновений (вы никогда не знаете).

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]