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

私のschema.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')

まさにこれが返され、github ページ (https://github.com/dejan/auto_html) の例のように :url が埋め込みコードに変換されません。

私が見逃しているものはありますか?正しい方向へのヘルプやポインタは大歓迎です!

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 に答える