私はビューをレンダリングしてエラーを出力する前に次の行を行うコントローラを持っています。Rails:Views:content_tag helpers
flash[:error]="Flash error"
flash[:info] = "Flash info"
これをうまくフォーマットしたいと思います。そのために私は私の見解では、この
def show_flash
a=""
[:success, :info, :error, :warning].each do |key|
a += content_tag(:div, flash[key], :id => key, :class => "#{key}") unless flash[key].blank?
end
end
のように見えるヘルパーを書いて、私は呼ん:
<%= show_flash %>
私はこれを実行しようとすると、Webページを含む、show_flashのフルテキストをレンダリングdivタグ、山括弧、およびすべて。要素を調べると(FirefoxまたはChromeを使用)、二重引用符で囲まれたテキストが表示されます。
は、その後、私は次のようにヘルパー1本のラインを変更しようとした:
a = content_tag(:div, flash[key], :id=>key, :class=>"#{key]") unless flash[key].blank?
すなわち、私は代わりに両者の最後のコンテンツタグ(エラー)を捕捉することになります。
2番目のケースでは、Webブラウザは「エラー」クラスのCSSルールでdivタグを正しくフォーマットしました。ブラウザにdivタグが表示されませんでした。
2つのcontent_tag要素を連結すると、なぜこの悲しみが生じましたか?
私に教えていただけると助かります。
Rails 3を使用していますか? –
私はRails 3.0.5を使用しており、元のコードはRails 2.3.9で書かれています。 –