我正在运行后台任务,需要将图像转换为jpeg并存储它。我正在使用CarrierWave上传器。这是代码
task reformat_user: :environment do
User.all.each do |u|
u.avatar.manipulate! do |av|
av.format('jpg')
av
end
end
但是我找不到用新的替换用户头像的选项
答案 0 :(得分:1)
如果您需要用new替换用户头像,您只需要为头像分配一个新文件
u.avatar = params[:file] # params[:file] contains the file uploaded by user from UI.
u.save!
或者这样
File.open('path_of_new_avatar') do |f|
u.avatar = f
end
u.save!
我希望我能正确理解你的问题。