久しぶりにRailsをさわっていて気がついた。
validationってオブジェクトのコレクションに対応していないんではないか?

active_record_helper.rbに定義されているerror_messages_forの部分を読んでみると、

# file active_record_helper.rb, line 103
def error_messages_for(object_name, options = {})
  options = options.symbolize_keys
  object = instance_variable_get("@#{object_name}")
  if object && !object.errors.empty?
    content_tag("div",
    content_tag(
    options[:header_tag] || "h2",
    "#{pluralize(object.errors.count, "error")} prohibited this 
       #{object_name.to_s.gsub("_", " ")} from being saved"
    ) +
    content_tag("p", "There were problems with the following fields:") +
    content_tag("ul", object.errors.full_messages.collect { |msg|
              content_tag("li", msg) }),
    "id" => options[:id] || "errorExplanation", 
          "class" => options[:class]
         || "errorExplanation"
    )
  else
    ""
  end
end

やっぱりか・・・
これだけなら、ActionHelperに複数オブジェクト用のメソッドを定義すれば良いけど、
更にテーブルを結合している場合は、そもそも更新をどうすれば良いのだろう?

色々頭に方法は浮かぶけど、一番Railsらしい書き方に未だ至らず、現在朝の3時半。

くそぉ、明日やるか・・・

くやしい
くやしい
くやしい
くやしい

絶対明日攻略してやる!

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: error_messages_forって複数レコードに対応出来ない?

このブログ記事に対するトラックバックURL: http://hackmylife.net/mt/mt-tb.cgi/402

コメントする

このブログ記事について

このページは、hackmylifeが2007年3月25日 03:23に書いたブログ記事です。

ひとつ前のブログ記事は「Mac OSXをEmacsキーバインドに」です。

次のブログ記事は「Railsのvalidationを日本語化 [ActiveHeart]」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.0

アドセンス

MoMAstore MoMAstore
MoMAstore MoMAstore
MoMAstore MoMAstore
MoMAstore MoMAstore
MoMAstore MoMAstore
MoMAstore
MoMAstore
MoMAstore
MoMAstore