2014-09-29 2 views
0

Goliath를 사용하여 레일즈 앱용 웹 서비스를 작성하고 있으며 웹 서버에 전송 된 모든 요청을 기록하려고합니다. 내가 app/models에서 모델이 Logger라는 이름이다른 모듈에서 레일스 모델에 액세스

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 

: 나는 내 두 개의 모듈 인이 Api 클래스가 있습니다.

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

어떻게해야합니까 : 나는 오류가 발생합니다 ruby api.rb -sv 실행할 때 문제는? 감사.

+0

레일 환경없이이 파일을 실행하기 때문에이 오류가 발생합니다. 레일스 콘솔을 열면 올바르게 작동하는 것을 볼 수 있습니다. – BroiSatse

답변

3

Ruby 코드를 ruby api.rb -sv으로 실행하고 Rails 자체가 아닌 경우 (따라서 Rails 환경이로드되지 않고 모델 /이로드되지 않음).

(앱 디렉토리에있는) 터미널에서 rails console을 실행 한 다음 API 코드를 실행하십시오. 너 괜찮을거야.

관련 문제