Вызов метода контроллера из внешнего скрипта ruby - PullRequest
0 голосов
/ 17 октября 2011

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

Подписчик AMQP внутри приложения Rails

Как правильно запустить одно действие контроллера из другого действия контроллера без перенаправления HTTP?

http://www.misuse.org/science/2007/07/24/firing-rails-controller-actions-from-command-line-console/

Первый позволил мне получить доступ только к модели (во всяком случае, я полагаю, должна быть основой для того, что я хочу). Второй ... никогда не работал для меня. И последний не работает на рельсах 3 (ActionController :: Integration не существует)

Я думаю, что последний подход все еще может быть использован, если я выясню, как сеансы обрабатываются в рельсах 3. В любом случае, кто-то пробовал что-то подобное раньше? Любое предложение будет оценено.

1 Ответ

0 голосов
/ 17 октября 2011

Почему бы просто не отправить запрос через HTTP-запрос? Ваш контроллер, в основном, делает действия видимыми через URL-адреса - простой запрос URL-адреса по сути аналогичен вызову кода контроллера, и он сохраняет ваш код работающим как программная служба / API. Вы можете даже использовать curl, чтобы сделать это, если хотите.

В противном случае, если два файла находятся в одной машине / папке, вы можете попытаться явно включить один код контроллера в другой, но, возможно, это не тот путь. Зависит от того, как вы хотите, чтобы конечный результат работал.

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