0

我正在尝试使用 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)

知道我错过了什么吗?非常感谢任何正确方向的帮助或指示!

4

1 回答 1

1

您将 video_html 作为参数传递,您应该传递video。在控制台中试试这个:

Link.create(:title => 'test', :url => 'http://example.com', :video => 'http://www.youtube.com/watch?v=a2LFVWBmoiw')
于 2012-11-14T21:45:06.393 回答