-1

簡単なことだと思いますが、必要な出力を得るために既存の auto_html フィルターを変更する方法がわかりません。これを見つけまし た auto_html のフィルターを作成しています が、既存のフィルターを変更する必要があります。

たとえば、データベースにこの形式 ( http://youtu.be/UfQC1h-EANI ) の youtube リンクのリストがあり、ビューに出力されます。

%li
  = link_to link.title, link.url, :class => "youtube title_link"

リンクがクリックされたら、 http: //youtu.be/UfQC1h-EANIをhttp://www.youtube.com/embed/UfQC1h-EANI?rel=0に変換する必要があります。

auto_html を使用して変換を機能させることができましたが、すべての html が添付されています。フィルターを変更できれば、すべての html なしで URL を提供するように調整できると考えています。私の人生では、auto_html の youtube フィルターを変更する方法がわかりません。これはこれに対する最良のアプローチですか?

どんな助けでも大歓迎です!

4

1 に答える 1

0

正規表現でそれを行うだけです

link_to link.title, "http://youtube.com/embed/#{link.url.to_s.match(/\/\/youtu.be\/(\S+)$/)[1]}/?rel=0", :class => "youtube title_link"

それonclickだけが必要な場合は、JavaScript で実行できます。

于 2012-11-15T18:50:04.340 に答える