2017-06-06 65 views
0

我使用carrierwave和Minimagick gem将附件上传到S3。现在我想将some.pdf保存为两个模型(即赋值和消息)。我在附件字段中给出相同的参数以保存在两个表中。但第二个表附件保存模糊。第一个人清楚地看到依恋。
我的控制器代码一样,将图像上传到多个型号的导轨

@assignment = Assignment.new(assignment_params) 
@message = Message.new 
begin 
    Message.transaction do 
    asign_att = params[:assignment][:attachment] 
    @assignment.save! 

    @message.attachment = asign_att 
    @message.save! 
    end 
end 

我的模型,

(in attachment.rb) mount_uploader :attachment, AttachmentUploader 
(in message.rb) mount_uploader :attachment, ImageUploader 

我想同一个文件保存到两款车型具有明确的说法。我想做的事?提前致谢。

回答

0

如果您指定了任何版本或类似的东西,请检入您的第二张表上传文件。 使用版本,您可以创建像这样的不同分辨率的附件克隆。

version :thumb do 
    process resize_to_fit 50, 50 
end 
0

我会用一个回调来做到这一点,是这样的:

after_commit :assign_to_models 

def assign_to_models 
    ... 
end 

恕我直言,我将创建一个拥有所有carrierwave附着物的模型,并将它属于既能messageattachement

我希望这可以帮助