您会看到,对于自动设置,视频需要像这样初始化:
<video class="video-js" data-setup='{}'>
我认为这样会很好,因为在轨道中我可以这样做:
<%= video_tag @video.filename + '.mp4', :class => 'video-js', 'data-setup' => '{}' %>
然而,这会使标记呈现如下:
<video class="video-js" data-setup="{}" src="/assets/0019 Trump Android.mp4"></video>
乍一看看起来很好,除了数据设置行需要单引号,而不是双引号,或者videojs设置不起作用。像这样:data-setup='{}'
那么有没有办法让rails用单引号而不是双引号来呈现那个属性?
另外,第二个想法,当我可以用HTML编写视频标签时,为什么我应该使用rails渲染视频标签?
答案 0 :(得分:1)
video_tag
帮助器确实有一些用途,比如引用图像的poster
属性,因此需要包含图像文件的摘要。但是对于你的用例,当你自己编写纯HTML时很容易使用帮助器。
答案 1 :(得分:1)
助手只是为了让语法更容易阅读,更容易编程。如果您编写HTML而不是ERB,它会执行相同的操作,只要您的HTML标签打印出ERB本来打印的所有内容。
在这个专用的用例中,我只会编写由ERB .each
标记包围的整个HTML标记。不确定你是如何设置你的控制器的,但假设它是@videos = Videos.all
,它就是这样的:
<% @videos.each do |video| %>
<video class="video-js" data-setup='{}' src=<%=video.file_name%>>
</video>
<% end %>