기본적으로 모든 것을 쉽게 제어 할 수 있도록 initializer class
이 RAILS_ROOT/config/initialiers/app_constant.rb
입니다.레일즈 : 클래스를 만들기 전에 이니셜 라이저를 실행하십시오.
class User < ActiveResource::Base
self.site = AppConstant::APIURL
end
그리고 rails s
을 실행할 때, 내가 레일 실행하기 때문에 문제가 있음을 알고
<class:User>: uninitialized constant User::AppConstant::APIURL
다음과 같은 오류가 발생했습니다 :
class AppConstant
APIURL = 'http://path.to.api'
end
그리고 RAILS_ROOT/model/user.rb
에서
마지막으로이 문제는 바로 레일로드 모델 이전에로드 된 application.rb
에 require "#{Rails.root}\conf\initializers\app_constant.rb"
을 추가하여 해결된다.
답변 해 주셔서 감사합니다. 전역 범위'::'로 시도했지만 작동하지 않습니다. 문제는 레일스가'User' 클래스를 생성 할 때'AppConstant' 클래스가 초기화되지 않는다는 것입니다. 하지만 클래스'AppConstant'가'User' 클래스를 읽기 전에 초기화되도록하는 법을 모르겠다. – jwall
내 대답을 업데이트했다. – DanS
네가 맞아, 마침내 나는이 문제를 해결해야 해. – jwall