我正在尝试使用auto_html gem将提交的youtube链接转换为嵌入链接。我没有得到auto_html的任何回复。我确定这是一件我想念的简单事情吗?
在我的Gemfile中:
gem "auto_html"
我添加了:video_html列到我的链接模型。 (这是迁移文件)
class AddVideoHtmlToLink < ActiveRecord::Migration
def change
add_column :links, :url_html, :string
end
end
我的scheema.rb看起来像这样:
create_table "links", :force => true do |t|
t.integer "user_id"
t.string "url"
t.string "title"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "url_html"
端
我的link.rb模型如下所示:
class Link < ActiveRecord::Base
belongs_to :user
belongs_to :admin
has_many :comments
has_many :votes
validates :title, :url, :presence => true
attr_accessible :title, :body, :url, :user_id, :url_html
auto_html_for :url do
html_escape
image
youtube(:width => 400, :height => 250)
vimeo(:width => 400, :height => 250)
link :target => "_blank", :rel => "nofollow"
simple_format
end
end
在我的index.html.haml视图中,我得到了:
%p
= link_to link.title, link.url_html, :class => "youtube title_link"
现在,当我通过控制台提交时:
Link.create(:title => 'test', :url => 'http://www.youtube.com/watch?v=a2LFVWBmoiw')
我刚刚得到这个返回,我没有得到:url转换为嵌入代码,如github页面上的示例(https://github.com/dejan/auto_html)
知道我错过了什么吗?非常感谢任何正确方向的帮助或指示!
答案 0 :(得分:1)
您将video_html作为参数传递,您应该传递视频。在控制台中试试这个:
Link.create(:title => 'test', :url => 'http://example.com', :video => 'http://www.youtube.com/watch?v=a2LFVWBmoiw')