paramvir
paramvir

Reputation: 404

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?

Upvotes: 0

Views: 648

Answers (1)

pankajbatra
pankajbatra

Reputation: 56

Can you please try adding following line to applicaion.rb

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

Upvotes: 1

Related Questions