Yii - 每个数据行中都有音频播放器的Gridview

时间:2015-07-19 17:20:37

标签: audio gridview widget yii2 playback

我有一个gridview,显示存储在数据库模型中的音频路径,然后在附加到播放按钮的路径中抓取它的文件,以便只播放音频文件。

enter image description here

以下是代码:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        ['class' => 'yii\grid\SerialColumn'],

        //'id',
        'nome',
        //'ficheiro',
        [
            'label' => '',
            'format' => 'raw',
            'value'=> function($data) { return Html::a('&#9658;',$data->ficheiro); },
        ],

        ['class' => 'yii\grid\ActionColumn', 'template' => ''],
    ],
]); ?>

但是现在我改变了主意,想要在gridview内部实现,而不是播放按钮,某种带按钮的小部件或音频播放器,可能还有听过的文件百分比。

就像spotify或类似。

试图嵌入为值=&gt;小部件的字段:yii2-jplayer-widget指向音频文件,但它不接受它,并抛出错误。

以下是在Gridview中嵌入播放器小部件的代码(不起作用):

'value'=> AudioJs::widget(['files'=>'1.mp3']),

它抛出错误:获取未知属性:app \ models \ Faixas ::

感谢任何有助于我解决这个问题的想法。

1 个答案:

答案 0 :(得分:1)

为什么不是html5音频播放器

  'value' => function ($model) {                      
              return "<audio controls='controls'>
                        <source src='" . $model->ficheiro  .   "' type='audio/mp3' />
                       </audio>" ;
            },