Създадох загриженост в контролери/загрижености, наречена reports.rb
В него създадох модула ClassMethods.. Изглежда така
module Reports
extend ActiveSupport::Concern
included do
require 'peddler'
require 'csv'
end
module ClassMethods
def report_details(token, marketplace_id, merchant_id)
#...
end
Включих това безпокойство в моя контролер на Merchants по следния начин:
class MerchantsController < ApplicationController
include Reports
И след това се опита да извика метода report_details в действие на контролера на Merchants по следния начин:
def pull_from_amazon
me = Merchant.find(params[:merchant_id])
marketplace = me.marketplace
token = me.token
Merchant.report_details(token, marketplace, params[:merchant_id])
redirect_to root_path
end
Според тази публикация Rich on Rails трябва може да се обади:
Merchant.report_details(xx,xxx,xxxx)
Но получавам NoMethodError, когато се опитвам.. Опитах също:
me.report_details(xx,xxx,xxxx)
И получих същата NoMethodError
Какво сбърках?