Поскольку заголовок вашего вопроса может привлечь зрителей, ищущих другой ответ, я собираюсь ответить на вопрос "могу ли я использовать помощников рельсов в моих контроллерах"?Для этого есть законное применение, поэтому вот самый чистый способ сделать это:
В файле помощников оберните код, к которому вы хотите получить доступ в модели, следующим образом:
module HelperModuleName
[helper code here]
end
Обтеканиетолько код, который вам нужно использовать в ваших контроллерах (в отличие от включения всех помощников, использующих include ApplicationHelper
), является хорошей идеей, потому что он уменьшает вероятность конфликтов имен методов и заставляет вас быть более осмотрительным в выборе использования помощников в контроллерах.
Теперь включите модуль в ваш application_controller.rb:
class ApplicationController < ActionController::Base
protect_from_forgery
include HelperModuleName
end