2011-02-02 13 views
0

私はapplication_helper.rbでこのメソッドを使ってフラッシュを表示しています。しかし、私はフラッシュの内容とフラッシュを消すためのリンクを表示する必要があり、私はそうすることはできません。今のところ、「近い」リンクが表示されています。ruby​​ on rail 3のネストされたcontent_tagのヘルプ3

def show_flash 
     [:notice, :error, :alert].collect do |key| 
     content_tag(:div, (flash[key] and content_tag(:a, "close", :class => "#{key}", :href => "#", :onclick => "$('messages').fade(); return false;")), :id => key, :class => "flash_#{key}") unless flash[key].blank? 
     end.join 
    end 

答えて

0

これは私が思いついた解決策です。それは<a>タグでフラッシュメッシュ全体をラップするので最適ではありませんが、十分に機能します。

def show_flash 
     [:notice, :errors, :alert].collect do |key| 
     msg = (flash[key].to_s + " (click to close)") 
     content_tag(:div, (content_tag(:a, msg, :class => "#{key}", :href => "#", :onclick => "$('messages').fade(); return false;")), :id => key, :class => "flash_#{key}") unless flash[key].blank? 
     end.join 
    end