【发布时间】:2012-11-23 21:41:38
【问题描述】:
我使用 Capistrano 进行部署,使用 Sidekiq 进行队列。我需要加载用户 ID 以在 deploy.rb 文件中设置 :sidekiq_queues 变量以执行 sidekiq 队列。现在我使用以下代码
set :sidekiq_queues, ::User.all.map {|u| "-q parsing_user_#{u.id}"}.join(" ") + " -q parsing_user_0"
但它会引发以下错误
./config/deploy.rb:29:in `load': uninitialized constant User (NameError)
我尝试在 deploy.rb 中加入“rubygems”和“active_record”,但没有帮助。 结果我应该有 sidekiq_queues == “-q parsing_user_1 -q parsing_user_2 -q parsing_user_3 -q parsing_user_4 -q parsing_user_5 -q parsing_user_0”。 硬编码队列名称不是解决方案。
【问题讨论】:
标签: ruby-on-rails capistrano sidekiq