1

我試圖用它連接到其他模型中的註釋風格模型,但我不斷收到錯誤:accepts_nested_attributes

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 

這在審查模式

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 vs MODELNAME ...我不知道爲什麼?這種形式似乎與嵌套的一個例外是一樣的?

回答

0

確保您使用的是fields_for爲嵌套對象獲取表單構建器。

相關問題