두 개의 레일스 프로젝트가 있으며 Foo와 Bar라고 부릅니다. 그들은 같은 모델을 공유합니다. 모델은 Foo 및 Bar 링크에서 해당 파일에 저장됩니다.레일에서로드 순서 보장
푸의 모델 중 하나의 특정 메소드의 동작이 바에서 다른 할 필요 : 프로젝트 푸의 모델에서
/model_a.rb : 어딘가에 프로젝트 바에서
class ModelA
def method_a
puts "default behavior here"
end
end
:
class ModelA
def method_a
puts "special behavior here"
end
end
다음 코드 줄이되도록 :
x = model_a.method_a
은 Bar가 Foo의 모델을 망쳐 놓지 않고도 다른 프로젝트에서 다른 프로젝트에서 다르게 실행됩니다. 유사한 상황이 존재할 것입니다. 아마도 Foo의 모델이 단순히 보석 일 경우,로드 순서 질문은 다를 수 있습니다.
제 질문은 다음과 같습니다.이 코드 스 니펫을 프로젝트 Bar에 어디에 배치해야합니까? 그리고 Bar의 mix-in이 마지막에로드되어 프로젝트 바에서 런타임에 올바른 함수가 실행되도록 보장하려면 어떻게해야합니까?