別のモデルにアタッチされているコメント スタイル モデルを使用しようとしていますが、エラーが発生し続けます。
Review(#2171315060) expected, got Array(#2148226700)
パラメータ付き:
Processing PlacesController#create (for 127.0.0.1 at 2010-04-15 18:57:02) [POST]
Parameters: {"commit"=>"Submit", "action"=>"create", "destination_id"=>"3243", "controller"=>"places", "place"=>{"address"=>"sdfsdf", "name"=>"dssfs", "lng"=>"", "reviews"=>{"content"=>"sdfsdfsdfsd"}, "website"=>"sdfsdf", "city_id"=>"3243", "lat"=>"", "place_type"=>"1"}}
私はこれを親モデルに持っています
has_many :reviews, :as => :reviewable, :dependent => :destroy
accepts_nested_attributes_for :reviews
そして、これは Review モデルで
belongs_to :reviewable, :polymorphic => true
何か案は?
私は写真を扱うのとまったく同じようなものを持っています...また、正常に動作するポリモーフィックです。私が見ることができる唯一の違いは、このモデルをネストしたことです。そのため、フォームは次のようになります。
<% form_for :place, :url => destination_places_path(@city), :html => { :multipart => true } do |f| %>
また、動作する例では、出力が次のようになることにも気付きました。
{"article"=>{"photos_attributes"=>{"1271403114089"=>{"data"=>#<File:/var/folders/9b/9b3G5CRzGk0okD2UGi-hvE+++TI/-Tmp-/RackMultipart20100416-26553-177jk7b-0>}}, "title"=>"dsfdfs", "excerpt"=>"", "content"=>"<p>\r\n\tsdfsdf</p>\r\n", "tag_list"=>"lala,lah"}, "commit"=>"Save", "action"=>"create", "controller"=>"articles"}
そうでないものと比較して:
{"commit"=>"Submit",
"destination_id"=>"1461",
"place"=>{"name"=>"sdfasdf",
"address"=>"asdfasdf",
"photos"=>{"data"=>#<File:/var/folders/9b/9b3G5CRzGk0okD2UGi-hvE+++TI/-Tmp-/RackMultipart20100416-26553-8edo05-0>},
"lng"=>"",
"website"=>"asdfasdfs",
"reviews"=>{"content"=>"asdfasdf"},
"city_id"=>"1461",
"place_type"=>"1",
"lat"=>""}}
つまり、MODELNAME_attributes と MODELNAME があります...なぜだかわかりませんか? ネスティングが一つ違うだけで形は同じみたい?