5

フォームを保存してフィールドの検証に失敗した場合、ラベルをまったく変更したくありません。入力をdivと"field_with_errors"のクラスでラップしてもかまいませんが、ラベルもラップしないようにするにはどうすればよいですか?

4

2 に答える 2

7

私はfield_error_procメソッドに関するActionView::Baseドキュメントで何も見つけることができませんでしたが、これが私が思いついた解決策です。うまくいけば、これは他の人を助けるでしょう!

 ActionView::Base.field_error_proc = Proc.new do |html_tag, instance| 
  unless html_tag =~ /^<label/
    "<div class=\"field_with_errors\">#{html_tag}</div>".html_safe
  else
    html_tag.html_safe
  end
end
于 2012-09-05T17:26:23.723 に答える
-1

たとえば持っている代わりに

<%=label "name", :name%>

、削除:nameして持っている

<%=label "name"%>

これにより、ラッピングが停止します。

于 2015-09-07T11:58:13.240 に答える