我正在做一个项目,我将 youtube 视频链接存储在数据库中,然后检索这些链接并使用刀片模板引擎尝试将它们嵌入到页面中。我使用循环将视频放在页面中。出于某种原因,我在浏览器中没有收到任何视频。它覆盖了提到的空间,但没有渲染任何东西。我正在使用 laravel 3。如果有帮助,这里有几个代码片段。
这是 index.blade.php
@layout('layouts.master')
@section('content')
@foreach ($videos as $video)
<h4>{{ $video->title }}</h4>
<br>
<div class="media">
<div class="media-body">
<iframe width="560" height="315" src="{{ $video->link }}" frameborder="0" allowfullscreen>
</iframe>
</div>
</div>
<br>
@endforeach
@endsection
$videos 变量是从控制器传递的。
class Videos_Controller extends Base_Controller
{
public $restful = true;
public function get_index()
{
$videos = DB::table('videos')->get();
return View::make('videos.index')
->with('title', 'Videos')
->with('videos', $videos);
}
}
我得到的只是一个空白页。我不明白我做错了什么。我正在使用 twitter bootstrap 进行 css 原型设计。任何帮助将不胜感激。
以下是 master.blade.php 的“头部”的样子:
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ $title }} </title>
<meta name="viewport" content="width=device-width">
{{ HTML::style('css/bootstrap.min.css') }}
{{ HTML::style('css/bootstrap-responsive.min.css') }}
</head>
当我检查元素时,这就是 Firefox 中出现的内容。
<div class="media">
<div class="media-body">
<iframe width="560" height="315" frameborder="0" allowfullscreen="" src="http://www.youtube.com/watch?v=1iBm60uJXvs">
#document
<html>
<head></head>
<body></body>
</html>
</iframe>
</div>
</div>