2011-05-02 1 views
0

여러 레일 사이의 공유 할 모델 세트가 있습니다./sinatra/etc 응용 프로그램. 나는 이것과 같은 것을 아직 보지 못했고, DRY 방식으로 이것에 대해 가장 효과적인 방법이 무엇인지 궁금합니다. 모델의 중앙 영역을 지정할 수 있습니까? 필요한 모델 만 가져올 수있는 보석을 만들 수 있습니까? 다른 사람들이이 문제에 어떻게 접근 했습니까? 나는 이것을 처리하려고 아직 알지 못하는 작은 보석이나 뭔가를 생각하고있었습니다.응용 프로그램간에 공유되는 모델 : DataMapper Rails 기타

저는 Datamapper를 사용하고 있습니다. 그러나 이것은 또한 여러 레일/레일 레일이 아닌 루비 어플리케이션을 구성하는 일반적인 문제입니다.

답변

0

본격적인 보석을 만드는 것보다 모델 및 관련된 단위 테스트가 포함 된 하위 모듈을 저장소에서 쉽게 찾을 수 있습니다. 이렇게하면 모든 앱을 위에서 아래로 움직이지 않고 한 앱에서 다른 앱으로 패치 할 수 있습니다.

+0

이것은 내가 취해야 할 첫 번째 단계입니다. – blueblank

0

다른 앱에서 사용하려는 모델에 공개 API를 만들 수 있습니다.

레일에는 이미 다른 컨트롤러에서 ActiveResource를 사용할 수 있도록 REST 컨트롤러가 있어야합니다.

일을 단순화하고 DRY 상태를 유지하기 위해 ActiveResource 클래스를 젬으로 패킹 할 수 있습니다.

일부 예제는 http://api.rubyonrails.org/classes/ActiveResource/Base.html을 확인할 수 있습니다.

ActiveRecord 또는 DataMapper를 사용하고 있어도 상관 없습니다.

+0

이것은 흥미 롭다. 나는 그것의 사용법을 볼 수있다. 아마도 DB 서버의 api와 같은 것을 구현하는 방법을 찾으려면 더 깊이 파고들 필요가있을 것입니다. – blueblank