내 레일 앱에 정의 된 모델 호출 구성을 확장하고자했습니다. 어떤 건축 학적 이유로, 보석으로 확장 할 수 있다면 좋을 것입니다.보석으로 레일 모델을 확장
Configuration.class_eval do ... end
그것은 나에게이 오류 반환 :
configuration: undefined method 'config' for nil:NilClass (NoMethodError)
을 그리고 난이 시도하는 경우 :
을하지만 내 보석 foo.rb 파일에 난 내 구성 클래스를 호출하는 경우
class Configuration
TEST = [:foo, :foo2].freeze
end
내 rails app에 정의 된 activerecord 클래스에 더 이상 액세스 할 수 없습니다.
일부 레일 클래스에 과부하를 걸 수있는 방법이 있습니까?
편집 :이 작품 :) 내 railtie 파일 모듈 m 클래스 mRailtie < :: 레일 :: Railtie config.after_initialize이 ( :: Configuration.send을에서
module m
module ConfigurationExtension
extend ActiveSupport::Concern
included do
CONSTAZ = [:foo].freeze
end
module ClassMethods
def foo1
"foo1"
end
end
module InstanceMethods
def foo2
"foo2"
end
end
end
end
require 'm/mailtie.rb' if defined?(Rails)
같은 뭔가 : 포함, ConfigurationExtension) 끝 끝 끝