我将photo.rb模型更改为多态并可用于需要保存图像的各种其他模型,并且工作正常,但我无法弄清楚如何通过父模型正确保存新附件。有任何想法吗?我不得不以某种方式对待这种方式吗?因为,它也没有得到imageable_type ...我将不得不添加。
我看到了多态回形针插件看起来像野兽并使用另一张桌子?所以我希望能有更好的解决方法。
我得到了:
ActiveRecord::AssociationTypeMismatch (Photo(#2189565500) expected, got Array(#2148226700))
Parameters: {"commit"=>"Create", "action"=>"update", "_method"=>"put", "authenticity_token"=>"kp7NeMs7moGwu0AZMXVowUpphp9vzitdZZ6t8YO7RKQ=", "id"=>"2586", "muffin"=>{"photos"=>{"data"=>#<File:/var/folders/4d/4dqp9CQQEbmM1akqbtLxzk+++TI/-Tmp-/RackMultipart20100218-11622-onqem2-0>}}, "controller"=>"muffins"}
has_many :photos, :as => :imageable, :dependent => :destroy
belongs_to :imageable, :polymorphic => true
has_attached_file :data,
:storage => 's3',
:s3_credentials.....
答案 0 :(得分:4)
我有了使用accepts_nested_attributes_for的想法,因为如果它不是多态关联,那就是我可能会做的事情,但是另一个模型我正在抛出属性...瞧,它有效。
has_many :photos, :as => :imageable, :dependent => :destroy
accepts_nested_attributes_for :photos