Ruby on rails 3 ActiveRecord::AssociationTypeMismatch(动态图像上载程序)
我正在尝试按照教程创建一个新的照片模型,并将它们与另一个模型相关联。复制和粘贴所有代码后,我得到一个“AssociationTypeMismatch”错误,如下所示Ruby on rails 3 ActiveRecord::AssociationTypeMismatch(动态图像上载程序),ruby-on-rails-3,nested-attributes,image-uploading,Ruby On Rails 3,Nested Attributes,Image Uploading,我正在尝试按照教程创建一个新的照片模型,并将它们与另一个模型相关联。复制和粘贴所有代码后,我得到一个“AssociationTypeMismatch”错误,如下所示 ActiveRecord::AssociationTypeMismatch in AdminForksController#update Photo(#2176152540) expected, got Array(#2148417160) app/controllers/admin_forks_controller.rb:2
ActiveRecord::AssociationTypeMismatch in AdminForksController#update
Photo(#2176152540) expected, got Array(#2148417160)
app/controllers/admin_forks_controller.rb:23:in `update'
{ "commit"=>"update",
"fork"=>{"position"=>"",
"name"=>"FORK",
"brand"=>"",
"photos"=>{"data"=>#<ActionDispatch::Http::UploadedFile:0x103634328 @headers="Content-
Disposition: form-data; name=\"fork[photos][data]\"; filename=\"marty.jpg\"\r\nContent-Type:
image/jpeg\r\n", @tempfile=#<File:/var/folders/cZ/cZVO8X55FeynZw5cHRz1UE+++TI
/-Tmp/RackMultipart20110716-18721-16ttjsd-0>, @content_type="image/jpeg",
@original_filename="marty.jpg">},
"authenticity_token"=>"iSzZxyzTe/LDLIf4cQiYBGLIk96INnKCP3SC5b5MXHw=",
"utf8"=>"?",
"id"=>"7"}
ActiveRecord::AdminForksController更新中的AssociationTypeMismatch
需要照片(#2176152540),获取阵列(#2148417160)
app/controllers/admin\u forks\u controller.rb:23:in'update'
{“提交”=>“更新”,
“fork”=>{“position”=>“”,
“name”=>“FORK”,
“品牌”=>“,
“照片”=>{“数据”=>#},
“真实性令牌”=>“iSzZxyzTe/LDLIf4cQiYBGLIk96INnKCP3SC5b5MXHw=”,
“utf8”=>“?”,
“id”=>“7”}
我的forks型号如下所示:
class Fork < ActiveRecord::Base
has_many :photos
accepts_nested_attributes_for :photos, :allow_destroy => true
end
class Photo < ActiveRecord::Base
belongs_to :fork
has_attached_file :data
end
classforktrue
结束
我的照片模型如下所示:
class Fork < ActiveRecord::Base
has_many :photos
accepts_nested_attributes_for :photos, :allow_destroy => true
end
class Photo < ActiveRecord::Base
belongs_to :fork
has_attached_file :data
end
class-Photo
看起来像是:photos
作为数组传递,而:fork
需要它。如何解决此问题
更新
问题已经解决(见答案)。然而,这两个变量,
:fork
和@fork
有何不同?问题已经解决。在我的for_for
中,我使用了:fork
而不是@fork