根据网络请求调用 rake 任务
Calling rake task on web request
在我的 Rails 应用程序中,用户可以上传文件,然后我需要做的是:上传文件后,我想启动一个 rake 任务,它会解析文件并提供所有数据库中的表,并且取决于文件的大小,这可能需要一些时间。我假设我的控制器中的 >> system "rake task_name" 之类的东西会完成工作。
然而,这是最佳做法吗?安全吗?因为那样的话,任何用户都会开始一个抽成过程。在此 Railcast 中,他们推荐 运行 在后台进行抽取。什么是替代或常见做法?
我正在使用 Rails 3.2,所以我无法使用 Active Job。我使用 Sidekiq 并且工作正常。
查看非常有用的教程 here
在我的 Rails 应用程序中,用户可以上传文件,然后我需要做的是:上传文件后,我想启动一个 rake 任务,它会解析文件并提供所有数据库中的表,并且取决于文件的大小,这可能需要一些时间。我假设我的控制器中的 >> system "rake task_name" 之类的东西会完成工作。
然而,这是最佳做法吗?安全吗?因为那样的话,任何用户都会开始一个抽成过程。在此 Railcast 中,他们推荐 运行 在后台进行抽取。什么是替代或常见做法?
我正在使用 Rails 3.2,所以我无法使用 Active Job。我使用 Sidekiq 并且工作正常。 查看非常有用的教程 here