Ruby on rails Resque调度程序将哈希参数传递给作业
我有一个作业在其perform方法中接收哈希参数。我想定期给它打电话。我定义了一个CRON来在resque_schedule.yml文件中调度它。我试着这样做:Ruby on rails Resque调度程序将哈希参数传递给作业,ruby-on-rails,resque,resque-scheduler,Ruby On Rails,Resque,Resque Scheduler,我有一个作业在其perform方法中接收哈希参数。我想定期给它打电话。我定义了一个CRON来在resque_schedule.yml文件中调度它。我试着这样做: UpdateInterestHistoryJob: cron: "0 0 * * * America/Sao_Paulo" args: classifier: :SIAPE 但是,在作业中,我将参数作为数组获取: ["classifier", "SIAPE"] 如何正确定义它?如何将job参数定义为yml文件上的散列
UpdateInterestHistoryJob:
cron: "0 0 * * * America/Sao_Paulo"
args:
classifier: :SIAPE
但是,在作业中,我将参数作为数组获取:
["classifier", "SIAPE"]
如何正确定义它?如何将job参数定义为yml文件上的散列?在您的散列和我看到的差异中包含的散列之间:
你可以这样做
注意,此处的间距很重要。-必须缩进一个空格,而不是制表符,后跟一个空格。url和标签必须缩进两个空格,而不是制表符
此外,这可能会有帮助:
这是来自www.yaml.org的
简单内联散列
映射也可以使用内联语法包含在一行中。每个键值对用冒号分隔,映射中的每个条目之间用逗号分隔。用大括号括起来。
亚马尔
YAML中的简单内联哈希
红宝石
Ruby中的简单内联哈希
我还包括官方的YAMLSyntax,对此有很多解释
我刚刚在这里测试过,一个简单的破折号就足够了:
UpdateInterestHistoryJob:
cron: "* * * * * America/Sao_Paulo"
args:
- classifier: :SIAPE
此外,如果您的Resque作业中需要更多参数,只需将它们放置在不带破折号的位置:
UpdateInterestHistoryJob:
cron: "* * * * * America/Sao_Paulo"
args:
- classifier: :SIAPE
another: value
{ 'hash' => { 'name' => 'Steve', 'foo' => 'bar' } }
UpdateInterestHistoryJob:
cron: "* * * * * America/Sao_Paulo"
args:
- classifier: :SIAPE
UpdateInterestHistoryJob:
cron: "* * * * * America/Sao_Paulo"
args:
- classifier: :SIAPE
another: value