Я использую Rabl для генерации вывода XML в задаче rake:
xml = Rabl.render @listings, 'feeds/listings', :format => :xml
# do stuff with xml
Однако мне нужно использовать несколько вспомогательных методов в указанном файле представления rabl, и я продолжаю получать NoMethodError
, как и ожидал из ответа на этот вопрос.
Я пытался использовать extends
и include
в классе, используемом задачей rake, но все равно получаю ту же ошибку во вспомогательных методах:
require "#{Rails.root}/app/helpers/feeds_helper.rb"
class SerializeData
extends FeedsHelper
def perform
xml = Rabl.render @listings, 'feeds/listings', :format => :xml
# do stuff with xml
end
end
Мой вопрос: есть ли способ использовать вспомогательные методы в файлах представления rabl, сгенерированных таким образом? (или, по крайней мере, таким образом, чтобы я все еще мог отображать их в виде строки в задаче rake?) Вспомогательные методы используются много, много раз для правильного форматирования различных данных в соответствии с фиксированными требованиями, поэтому было бы очень трудно удалить их полностью .