首页 > 解决方案 > Youtube 嵌入 - Ruby on rails

问题描述

很抱歉问这个对某些人来说似乎很容易的问题,但我从今天早上开始就因为这么一件小事而抓狂。

我安装了 gem Youtube_embeb ( https://github.com/shir/youtube-embed/ )。

这允许在 iframe 中发布 youtube 链接......但它不起作用!

我有一个带有 youtube_url 字段的软件表单。

我不明白,因为当我添加:

require 'youtube_embed'

在我的 javascript.js 中,我有一个错误...

couldn't find file 'youtube_embed' with type 'application/javascript'

谢谢你的帮助。

标签: ruby-on-rails

解决方案


问题似乎很简单,在文档中并没有说您需要向 application.js 添加任何内容,如果您在 gem 的代码中看到,它没有任何 js 文件。

所以只需将这一行添加到您的 gemfile

gem 'youtube_embed'

运行捆绑安装

并将这个添加到您的 application_helper 例如,这样您就可以在应用程序的每个视图中使用该帮助程序。所以添加应用程序助手,这一行

require 'youtube_embed'

确保停止并重新启动服务器,以确保它加载 gem,然后您可以调用要显示视频的视图,这一行

<%= YoutubeEmbed::Video.iframe('https://www.youtube.com/watch?v=XD_e7T5WCqw') %>

它只是创建一些带有 iframe 的 html 来显示视频。您只需将其添加到您希望它显示的位置并更改您想要的视频的 url。

我测试了宝石并且它正在工作。就这3行。

考虑到 gem 正在工作,我仍然可以建议一个更简单的解决方案,删除 gem,添加这个助手

https://gist.github.com/a-barbieri/a93281cd5c01025664e5cbd781cd917c

按照说明进行操作,然后您就可以致电

<%= get_video_iframe('https://www.youtube.com/watch?v=XD_e7T5WCqw') %>

推荐阅读