我可以通过调用方法从控制器访问 Module class 方法吗?

can i access Module class method from controller just by calling the method?

我在 lib/api_client 中有以下模块:

request.rb

module APIClient

  class Request
    require 'digest/sha1'
    require "net/http"
    require "uri"

    def self.venues_response
      ...
    end

  end
end

我在我的控制器 class 中包含这样的内容:

class VenuesController < ApplicationController

  include APIClient

我想从 venues_controller 内部访问它的方法,如下所示:

venues_response

但是我收到以下错误:

undefined method `venues_response' for #<VenuesController:0x007f9ee058ad00>

如果我试试这个:

Request.venues_response

我得到:

uninitialized constant VenuesController::Request

唯一的方法似乎是这样的:

APIClient::Request.venues_response

有没有办法让调用更简单?我错过了什么吗?

编辑:

忘记提及 application.rb 上已经添加了自动加载:

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

request.rb 重命名为 api_client.rb