如何将参数传递给使用 Heroku Scheduler 调用的 rake 任务?

Posted

技术标签:

【中文标题】如何将参数传递给使用 Heroku Scheduler 调用的 rake 任务?【英文标题】:How can you pass in arguments to rake tasks called using Heroku Scheduler? 【发布时间】:2013-10-11 16:05:51 【问题描述】:

在线找到的 Heroku 中安排的 Rake 任务采用“rake task-name”格式。 Heroku 将 :environment 参数传递给 rake 任务,但没有关于将额外参数传递给 scheduler.rake 中列出的任务的文档

Heroku Scheduler Doc

【问题讨论】:

【参考方案1】:

你可以试试这个:

task :my_task, [:arg1, :arg2] => :environment do |t, args|
  puts "Args were: #args"
end

然后手动运行看看输出:

heroku run rake my_task

更新:

这个答案可能已经是旧答案了

【讨论】:

可能是愚蠢的问题,但最后一行不应该是heroku run rake my_task arg1, arg2吗?【参考方案2】:

代替rake task_name 输入rake task_name[arg1, arg2] 到 Heroku 调度程序主屏幕中任务列接受的字符串输入。

正如 CodeGroover 所提到的,您在 lib/scheduler.rake 中定义的 rake 任务应该定义它所期望的参数。

【讨论】:

以上是关于如何将参数传递给使用 Heroku Scheduler 调用的 rake 任务?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 SwiftUI 将参数传递给 Button 的操作

如何将参数传递给 Java 线程?

如何将参数传递给 erlang os:cmd()?

如何将两个参数传递给 Pool.starmap()?

如何将参数传递给使用 ...mapActions(...) 映射的函数?

如何将参数传递给使用 setTimeout 调用的函数?