如果我将大于 5mb 的视频文件保存到服务器上。我应该创建一个后台作业来保存这个文件吗?
这应该怎么做?我的视频模型有标题、描述和附件列/字段。各个领域都需要。
在 def create 中,我不应该做"if @video.save",而应该做类似"if Resque.enqueue(Save, @video)" 的事情?
我不确定如何做到这一点,因为将参数传递给 Resque.enqueue() 会将其转换为哈希。其次,使用 " "if Resque.enqueue(Save, @video)" ",期望 true 或 false。然而,Resque.enqueue 不能返回任何东西。还是我错了?
按钮线是。使用 resque + redis 的后台工作人员保存记录的适当方法是什么?
理想情况下,我认为它应该类似于:
def create
@video = Video.new(params[:video])
respond_to do |format|
if Resque.enqueue(Save)
...
end
end
module Save
@queue = :save
def self.perform
video = Video.new(params[:video])
video.save
return true
end
end
你怎么认为?