1

我正在使用 Goliath 为我的 Rails 应用程序编写 Web 服务,我想记录发送到我的 Web 服务器的所有请求。我有这个Api类,它位于两个模块中:

require 'goliath'

module WebService
  module Rest
    class Api < Goliath::API
      def response(env)
        # Log the request
        Logger.create(id: params['id'], type: params['type'])

        [200, {}, "success"]
    end
  end
end

我有一个app/models名为的模型Logger。问题是当我运行ruby api.rb -sv它时会引发错误:

uninitialized constant WebService::Rest::Api::Logger

我应该怎么办?谢谢。

4

1 回答 1

3

如果您ruby api.rb -sv使用 Rails 本身而不是通过 Rails 本身运行 Ruby 代码(因此,Rails 环境没有加载,同时,您的模型/也没有加载)。

从终端(在您的应用程序目录中)运行rails console,然后运行您的 api 代码。你应该没事。

于 2014-09-29T12:48:00.030 回答