我想复制has_many :pictures
的记录。复制记录是没有意义的,但复制Picture
记录是另一回事。
Picture
记录包含指向Post
Picture
有一个属性(对于Dragonfly),image_uid
包含2016/08/17/3chjxpz97o_tfss_05bbc7ac_a432_4408_bf6e_a0fa3dc4630d_animage.jpeg
图像存储在AWS S3服务器上。从服务器的角度来看,我认为这样做
image_uid
)下载到服务器Picture
记录image_uid
,以便我可以在新记录上手动设置它?THX
答案 0 :(得分:1)
我已经找到了这样做的方法。对于可能需要这个的人:
我原来的Picture
对象:
#<Picture:0x007f82570f8f58> {
:id => 285,
:image_uid => "2016/10/06/6tacpx09uq_large_0.jpeg",
:number => nil,
:main => true,
:created_at => Thu, 06 Oct 2016 08:59:44 UTC +00:00,
:updated_at => Thu, 06 Oct 2016 08:59:48 UTC +00:00,
:user_id => 46,
:company_id => 27,
:public => true
}
复制这实际上并不那么难。我使用了Ruby提供的.dup
方法。复制多张图片:
pictures.each do |p|
p2 = Picture.create(image:p.image, user:to_user, company:to_company, public:true, main: p.main)
end
image:p.image
是您进行实际图像复制的地方。