Кто-нибудь разобрался, как встраивать видео используя гем Redcarpet для Markdown в Rails 3.2? - PullRequest
2 голосов
/ 25 января 2012

Хотите знать, есть ли у кого-нибудь хорошее решение для этого?Мое приложение ничего не отображает, когда встраивает как старую, так и новую версию кода для встраивания видео YouTube.Я использую GitHub Markdown Gem Redcarpet , и, похоже, в разделе «Проблемы» нет информации, которая помогла бы решить эту проблему.Существует аналогичный вопрос о переполнении стека, но он касается другой проблемы.

Кто-нибудь разобрался, как встраивать видео, используя гем Redcarpet для Markdown в Rails 3.2?

1 Ответ

8 голосов
/ 25 января 2012

Убедитесь, что в фильтре отключен флаг: filter_html.

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

EDIT:

Если вы хотите пропустить только определенные 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)
...