我目前正在为微博发布实现一项功能,用户可以在其中链接到网站、视频、图像等,并在提交实际微博之前向他们预览信息。
我正在使用:
Ruby 开放图形协议 gem:
https://github.com/intridea/opengraph
开放图协议:
我已经对其进行了测试,它非常易于使用并且可以按预期工作:
控制器:
require 'opengraph'
def new
@movie = OpenGraph.fetch('http://www.youtube.com/watch?v=6ifSudReeuM')
end
看法:
<iframe src="<%= @movie.video %>"></iframe>
这将按预期显示视频。好的,我需要在不手动提供控制器中的视频 URL 的情况下执行此操作,但允许我的用户这样做,但在提交微帖子表单之前。
微博表单中有一个文本字段用于粘贴链接。
在我的微帖子表单中粘贴链接或单击 div 按钮时,我想将 url 传递给控制器并作为参数传递给 OpenGraph.fetch()。
我想在不提交我的 micropost 表单的情况下执行此操作,这意味着不单击表单的主提交按钮。我意识到我可以编写一些 JQuery 来检测文本字段何时粘贴了文本,然后获取文本字段的值,即 URL。
问题:
我的问题是如何模拟我对当前控制器所做的事情。基本上我如何手动提供链接作为 OpenGraph.fetch() 的参数,但使用用户在文本字段中粘贴/键入的 URL。
我只想让我的用户看到他们粘贴的内容的预览,例如视频屏幕和我可以从对象中抓取的视频描述,但在他们提交微博之前。
- 用户粘贴链接
- 我使用开放图形协议 gem 获取信息
- 显示它而不刷新页面
然后用户可以在微博表单的文本区域中输入他们的微博内容,或者直接提交。
所有数据都发送到数据库。例如,微博内容和视频的 URL。
我似乎无法找到实现这一点的方法。我会很感激一些帮助谢谢。
亲切的问候