【问题标题】:yii2:use video in use yii\bootstrap\Htmlyii2:在使用中使用视频 yii\bootstrap\Html
【发布时间】:2017-09-16 11:09:19
【问题描述】:

我想在 DetailView 中使用视频

  'attribute' => ['media_id',
                'format' => 'html',
                'value' => function ($model)
                    {


                    $image = app\models\Media::find()->where(['id' => $model->media_id])->asArray()->one();



                $url = $image['url'];

                $host = Yii::$app->params['uploadPath'];

                return Html::video("$host/" . $url, ['width' => '60px']);
                },
            'label' => 'عکس',
        ],

如何在本节中使用 HTML 中的视频?

这是我使用视频的错误:

name":"Exception","message":"Call to undefined method yii\\bootstrap\\Html::video()"

【问题讨论】:

标签: twitter-bootstrap yii yii2 yii2-extension


【解决方案1】:

没有 HtmlHeper Html::video() 函数,所以你应该使用平面视频标签,例如:

假设您使用的是 DetailView 小部件,您应该使用

echo DetailView::widget([
  'model' => $model,

  'attributes' => [
              [
                'format' => 'raw',  // or html
                'value' => function  ($model)  {

                    $image = app\models\Media::find()->where(['id' => $model->media_id])->asArray()->one();
                    $url = $image['url'];
                    $host = Yii::$app->params['uploadPath'];
                    return '<video width="60" height="240" controls>
                              <source src="' .$host. DIRECTORY_SEPARATOR  . $url'" type="video/mp4">
                            </video>' ;
              },
            'label' => 'عکس',
        ]
      ],
]);

http://www.yiiframework.com/doc-2.0/yii-helpers-html.html

http://www.yiiframework.com/doc-2.0/guide-helper-html.html

【讨论】:

  • 答案已更新 ..(缺少 $url)但检查真实的 $path ..真实的完整 url 和您的真实视频类型 ..我的建议
  • return '
  • 我认为@scaisEdge 在代码中出错:看第一行,height="240" 之前有"
  • 无论如何我已经用 DetailView 小部件的代码更新了答案.. 请记住,detailView 的匿名函数从版本 2.0.11 开始工作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-06
  • 1970-01-01
  • 2019-01-12
相关资源
最近更新 更多