2011-10-18 4 views
1

레일즈를 사용하여 매우 유사한 여러 사이트를 구축하고 있습니다. 여러 도메인에 응답하는 하나의 Rails 앱으로 이들을 구현하고, 제시된 내용과 도메인 이름을 기반으로하는 처리 논리를 변경하려고합니다. 사이트 당 변경/피부가 필요한 부분은 다음과 같습니다.레일스 애플리케이션에서 스키닝을 구현하는 가장 좋은 방법은 무엇입니까

  • 보기 : 페이지의 필드는 사이트마다 약간 씩 다릅니다. 일부 사이트는 다른 사이트보다 더 많은/다른 필드를 가지고 있지만 일부 사이트는 공통적으로 존재합니다.
  • 모델 (각 사이트에 대한 하위 케릭터가 다양하고 구현되는 기본 모델에 대한 수퍼 클래스를 정의하는 것이 가장 좋습니다)
  • 컨트롤러 논리. 이미 현재 도메인/응용 프로그램을 만드는 메커니즘을 구현 한

(매우 정직 보인다)

  • CSS를 처리 할 모델 서브 클래스를 포함한 유사하지만 몇 가지 작은 처리 차이가 많이가있다 보기, 컨트롤러 및 모델에 표시되는 이름

    사이트마다 뷰를 부분적으로 정의하고 ERB 논리를 사용하여 올바른 뷰를 포함 할 생각이었습니다. 컨트롤러는 가장 눈에 띄지 않는 부분처럼 보입니다.

    모든 의견을 보내 주시면 대단히 감사하겠습니다.

    건배 폴

  • 답변

    0

    나는

    이렇게하려면, 우리가 분석하는 응용 프로그램 컨트롤러에 before_filter를 사용하여 우리의 응용 프로그램, HiringThing (http://www.hiringthing.com)에 대한 비슷한 구현 request.host를 사용하고 요청이 어떤 웹 사이트인지 결정합니다. 그런 다음 뷰, 컨트롤러 및 모델에서 참조하는 변수 @site를 설정하여 런타임에 버전 요구 사항을 결정합니다.

    관련 문제