gpt4 book ai didi

ruby - 每当 ruby​​ 调度程序不起作用时,我错过了什么?

转载 作者:太空宇宙 更新时间:2023-11-03 17:59:25 25 4
gpt4 key购买 nike

无法让它工作......

在我的 config/schedule.rb 我有:

set :output, '../log/development.log'

every 5.minutes do
runner "UserWatchedRepo.update"
end

注意设置的日志,但没有任何反应。在我的 Rails 3.0.10 模型文件 app/models/user_watched_repo.rb 中,我得到:

class UserWatchedRepo
include Mongoid::Document

def update
conn = FaradayStack.build 'https://api.github.com'
User.all.map do |user|
nickname = user.nickname
resp = conn.get "/users/#{nickname}/watched"

resp.body.each do |repo|
user.watchlists.build( html_url: "#{repo['html_url']}",
description: "#{repo['description']}",
fork_: "#{repo['fork']}",
forks: "#{repo['forks']}",
watchers: "#{repo['watchers']}",
created_at: "#{repo['created_at']}",
pushed_at: "#{repo['pushed_at']}",
avatar_url: "#{repo['owner']['avatar_url']}" )
end
user.save!
end
end
end

有什么想法吗?

谢谢卢卡

最佳答案

您是否在控制台中运行了 whenever 命令?

您的代码实际上并没有创建一个 cronjob,它只是为必须转换为实际 cronjob 的 whenever gem 提供输入数据。

要完成此操作,您必须cd 进入您的应用程序根目录并运行以下命令:

whenever --update-crontab YOUR_APP_NAME

据我所知,YOUR_APP_NAME 不一定是您的实际应用名称,它只是一个唯一标识符。我认为使用您的应用名称以避免混淆是一种很好的做法。

关于ruby - 每当 ruby​​ 调度程序不起作用时,我错过了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7507344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com