2015-12-18 3 views
0

У меня есть этот код в моем контроллере, который описывает любимую подписку:Как обновлять через каждые тридцать дней

def favourite_subscribe 
    if FavouriteSubscription.favourite_subscription_check_cost(current_user, @user) 
     @favourite_subscription = FavouriteSubscription.add_favourite_subscription(current_user, @user) 
     @user.favourite_subscriber_total = @user.favourite_subscriber_total + 1 
     @user.save 
     redirect_to :back, :notice => "Congratulations, you are now a subscriber!" 

Теперь то, что я хочу сделать, это быть в состоянии обновить излюбленную подписку на каждые тридцать дней. Это должно действовать как модель подписки (люди платят за подписку). Единственная проблема: я не знаю, как это повторять каждые тридцать дней. Если у кого-нибудь есть Идеи, которые будут замечательными:)

Редактировать: Могу ли я реагировать на контроллер с задачей грабли. Если я смогу, то как

+0

Любой вид работы cron или эквивалент драгоценного камня. –

+0

всякий раз, когда gem выполняет его как кукурузу https://github.com/javan/whenever –

+0

У меня есть всякий раз, когда работа установлена, но многое из того, что мне нужно, должно быть частью контроллера, и насколько я знаю, вы не можете (если я не ошибаюсь). – Jakxna360

ответ

0

Я использую жемчужину delayed_job_recurring для планирования повторяющихся задач. Я был очень доволен этим и чувствую, что это довольно просто настроить. Рад помочь, если вы решите попробовать, и у вас возникнут проблемы с настройкой.

+0

Могу ли я использовать это для повтора контроллера, как я уже говорил выше? – Jakxna360

+0

@ Jakxna360 Вы можете переместить код с вашего контроллера на модель, он будет работать в любом месте. ИМО, этот код принадлежит модели. Поместите код, который вы хотите исполнить каждые 30 дней в методе 'def perform', например, в вашей модели« FavoriteSubscription »или в том, что вы решили назвать. –

+0

Спасибо ... единственная проблема Я не программист (я нанял фрилансера для написания приложения). Поэтому я понятия не имею, как поместить его в модель. Вот почему мне нужен способ повторить что-то в контроллере каждые тридцать дней. Мне нужно сделать это самым простым способом, не изменяя многие вещи (я не знаю, как это исправить). – Jakxna360

Смежные вопросы