2

誰かがこれに対する良い解決策を持っているかどうか疑問に思っています。YouTube のビデオ埋め込みコードの古いバージョンと新しいバージョンの両方を埋め込むと、アプリに何も表示されません。私は GitHub の Markdown Gem Redcarpetを使用していますが、「問題」セクションにこの問題の解決に役立つ情報がないようです。Stack Overflow にも同様の質問がありますが、別の問題を扱っています。

Rails 3.2 で Markdown の Redcarpet gem を使用してビデオを埋め込む方法を見つけた人はいますか?

4

1 に答える 1

9

レンダラーで :filter_html フラグが無効になっていることを確認してください。

Redcarpet::Render::HTML.new(:filter_html => false)

編集:

特定の html タグのみを通過させたい場合は、カスタム レンダラーを作成し (方法はこちら)、メソッドを定義する必要がありますblock_html

例えば:

class MyRenderer < Redcarpet::Render::HTML
  def block_html(raw_html)
    if raw_html =~ /^<iframe.*>$/ # You may want to optimize this.
      raw_html
    end
  end
end

次に、独自のレンダラーを呼び出すときに :filter_html を true に戻します。

MyRenderer.new(:filter_html => true)
于 2012-01-25T18:18:37.737 に答える