Member 13705672 Ответов: 1

Как автоматизировать свой код в ruby on rails?


Я создаю приложение Ruby on Rails, в котором данные из онлайн-базы данных извлекаются и хранятся в моей локальной базе данных. Однако этот процесс происходит только каждый раз, когда я повторно загружаю страницу.

Более того, я хотел бы создать что-то (возможно, тайм-аут), что позволило бы мне запускать код каждый раз (например, 2 минуты). Я не знаю, как это сделать.

Спасибо.

Что я уже пробовал:

Я не знаю, с чего начать, поэтому я еще ничего не пробовал.

1 Ответов

Рейтинг:
4

Member 13705672

Я воспользовался этим:

def show
  every_n_seconds (120) do
     #code to do
 end
end


И на самом верху (так что Руби видит этот метод раньше всего остального) у меня есть:

def every_n_seconds(n)
    loop do
      before = Time.now
      yield
      interval = n-(Time.now-before)
      sleep(interval) if interval > 0
    end
  end


Это работает довольно хорошо. Все равно спасибо всем. Я надеюсь, что это может помочь кому-то в будущем.