Как я могу создать новый объект в cron в rails, ссылаясь на контроллер и передавая переменные? - PullRequest
0 голосов
/ 18 декабря 2010

В настоящее время у меня есть способ ручной отправки формы создания объекта, который запускает материал в действии создания.

Я получаю доступ к этой форме следующим образом:

http://localhost:3000/contact_faxes/new?contact=1&fax=7&status=done

Это переводит меня в форму и выполняет вещи в действии создания.Как видите, я беру параметры и изменяю их, и передаю их, как если бы это была отправка формы.

Но теперь я хочу включить этот же процесс через задание cron.

OneЯ сделал это, введя весь код обратно в задание cron, совсем не используя методы new / create, что не похоже на путь.

Как бы я былМожно ли использовать существующие методы, используя задание cron?

Вот новые методы и методы создания:

https://gist.github.com/746686

1 Ответ

0 голосов
/ 19 декабря 2010

Я бы переместил весь этот код из контроллера в модель или другой объект рабочего процесса.

В вашем объекте ContactFax создайте что-то вроде:

ContactFax < ActiveRecord::Base

  after_create :send_fax

  def send_fax
    pdf = Prawn::Document.new
    ...
    OutboundMailer.deliver_fax_email #etc
  end
end

Таким образом, в своей работе cron вы можете получить доступ к объектам без вашего контроллера, а это то, что вам сейчас мешает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...