我有一个Ruby on Rails应用程序,它允许使用活动存储使用直接上载创建记录,如下所述:https://edgeguides.rubyonrails.org/active_storage_overview.html#direct-uploads
一切都很好。现在,我希望有一种方法来设置批量记录创建,也使用直接上传,但似乎找不出最好的方法。
假设我有一个名为HomeMovie的模型,该模型具有各种属性和视频附件。我希望能够一个接一个地填写多个HomeMovie表单,单击提交一次,然后开始上传每个表单的大附件,然后就可以离开了。在我目前的设置下,一次做一个,使用这些大附件需要太长的时间,并且需要经常照看孩子。任何帮助都是非常感谢的。
我使用的是Rails 5.2.3
发布于 2019-12-11 00:22:06
使用Sidekiq设置某种微服务/作业怎么样?Sidekiq允许您将视频作为单独的作业进行排队。
本质上,您的逻辑将使异步作业排队来处理附件的处理;然后,只需正确设置循环即可。
循环示例
def bulk_insert(videos) #with videos being an array or collection
videos.each do |vid|
#do whatever processing and record creation, then
VideoProcessJob.perform_async(vid["attachment_key"])
end
end
作业示例
class VideoProcessJob(video_attachment)
#assumes a service/module for processing the videos
VideoProcessor.new(video_attachment).process_video_attachment_logic
end
https://stackoverflow.com/questions/59266886
复制相似问题