有没有人想出如何在Rails 3.2中使用Redcarpet gem for Markdown嵌入视频?

bga*_*oci 2 ruby markdown ruby-on-rails ruby-on-rails-3 redcarpet

想知道是否有人有一个很好的解决方案.嵌入旧版和新版YouTube视频嵌入代码时,我的应用没有显示任何内容.我正在使用GitHub的Markdown Gem Redcarpet,并且它们的'问题'部分中似乎没有任何信息可以帮助解决这个问题.Stack Overflow上有一个类似的问题,但它处理的是另一个问题.

有没有人想出如何在Rails 3.2中使用Redcarpet gem for Markdown嵌入视频?

Nic*_*gan 8

确保在渲染器中禁用:filter_html标志.

Redcarpet::Render::HTML.new(:filter_html => false)
Run Code Online (Sandbox Code Playgroud)

编辑:

如果你只想让某些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
Run Code Online (Sandbox Code Playgroud)

然后在调用自己的渲染器时将:filter_html设置为true:

MyRenderer.new(:filter_html => true)
Run Code Online (Sandbox Code Playgroud)