Carrierwave 操作后替换文件
Carrierwave replace file after manipulate
我是运行一个后台任务,需要将图片转为jpeg并存储。我正在使用 CarrierWave 上传器。这是代码
task reformat_user: :environment do
User.all.each do |u|
u.avatar.manipulate! do |av|
av.format('jpg')
av
end
end
但是我找不到用新头像替换用户头像的选项
如果需要更换新的用户头像,只需要给头像分配一个新的文件即可
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!
希望我正确理解了你的问题。
我是运行一个后台任务,需要将图片转为jpeg并存储。我正在使用 CarrierWave 上传器。这是代码
task reformat_user: :environment do
User.all.each do |u|
u.avatar.manipulate! do |av|
av.format('jpg')
av
end
end
但是我找不到用新头像替换用户头像的选项
如果需要更换新的用户头像,只需要给头像分配一个新的文件即可
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!
希望我正确理解了你的问题。