Я использую драгоценный камень state_machine и драгоценный камень rufus-scheduler. Штатная машина работает отлично. Rufus-scheduler, однако, нет. Я создаю эту программу, чтобы привыкнуть к gufus gufus. Через 10 секунд после: принято переход на: оба, затем он должен перейти на: only_employer. Тем не менее, rufus-scheduler по какой-то причине не работает. Переход на: оба работает, но затем он не переходит к: only_employer. Как это исправить? Благодарю.rufus-scheduler gem не работает в рельсах
class Schedule < ActiveRecord::Base
require 'rufus-scheduler'
scheduler = Rufus::Scheduler.new
def set_schedule
scheduler.in '10' do #documentation says this should be 10 seconds
self.change_to_done
end
end
state_machine :accepted, :initial => :none do
after_transition :any => :both, :do => :set_schedule
event :change_to_done do
transition :both => :only_employer
end
end
end
Добавить scheduler.join как последнее утверждение в методе set_schedule. BTW Я думаю, что вам не следует использовать rufus-scheduler таким образом – Aguardientico
Спасибо, добавил, но это не сработало. Я посмотрел документацию, но не могу понять, что должен делать «scheduler.join». Не могли бы вы объяснить это? – Philip7899
'scheduler.join' заставляет текущий поток присоединяться к потоку планировщика. Это не то, что вы хотите. «scheduler.join» используется в автономных скриптах, а не в коде, запущенном через Rails или Sinatra. – jmettraux