简体   繁体   中英

Unable to access the class in lib from helper module in rails

Hi I am working on rails app. In the function makeRequestToAPI1 of ArticlesHelper module, I am calling the API1 class's (this class is present in lib/) method "createRequest(request). But it is giving me "NoMethodError".

articles_helper.rb

require '././lib/ThirdPartyLibs/api1'
require '././lib/ThirdPartyLibs/api2'

module ArticlesHelper
    include  EnumsHelper

    def makeRequestToAPI1(request)
        # here as request to API is same as the original request
        # so I am directly passing the request to the API
        response = API1.createRequest(request)
        Rails.logger.debug "makeRequestToAPI1: #{response}"
    end

    def makeRequestToAPI2(request)
        requestToAPI2 = {}
        requestToAPI2.merge!({:items => request[:items]})
        requestToAPI2.merge!({:pickup => request[:pickup]})
        requestToAPI2.merge!({:drop => request[:drop]})

        #response = API2.createRequest(requestToAPI2)
        #Rails.logger.debug "makeRequestToAPI2: #{response}"
        end
end

api1.rb

class API1 
    #class << self

    def self.createRequest(request)
        @response = {:etd => 10, :eta => 20}
    end
end

What am I missing here?

您可以尝试将以下行添加到applicaion.rb吗?

config.autoload_paths += %W(#{config.root}/lib)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM