2009-09-26 5 views
-1

안녕 얘들 아. 난 레일 애플 리케이션을 만들고 난 혼자 레일, 난 혼란과 불확실성을 실행 해요, MVC 패턴을 사용한 첫 번째 시간 중 하나가되고. 이미 잘 작동하는 application.html.erb을 정의 했으므로 현재 작업의 뷰를 렌더링하는 yield 문이 있습니다.레일 응용 프로그램 구조 도움말

예를 들어 사이드 바에 application.html.erb에 동적 콘텐츠가 포함되기를 원합니다. 이 동적 인 내용을위한 코드가 어디로 가야하는지 궁금합니다. 실험하는 동안 나는 집이라고 불리는 컨트롤러를 만들었고 거기에 로직을 정의했다. 그것은 내가이 모델을 만들지 않았기 때문에 모델을 만들지 않았기 때문에 내가 본 적이있는 대부분의 예제는 모델을 사용하여 영구 데이터의 일부 형태와 상호 작용하는 것입니다. 홈 컨트롤러에서 나는 인덱스 액션을 정의했고, mysite.com/home/에 가면 동적 컨텐트가 표시되지만 레이아웃의 컨텐트 섹션 (yield 문이있는 곳)에 표시됩니다.

기본적으로 나는 지금 모두 엉망이되어, 내 전체 사이트에서 사용하기 때문에 내 사이트 전반에 걸쳐 유지되도록이 동적 콘텐츠를 내 application.html.erb 레이아웃의 사이드 바에 배치하는 방법에 대해 궁금합니다. 이 레이아웃. 내가 application_controller.rb을 사용하려고 생각하고 있었지만 뭔가 혼자두고 가야한다는 것을 알려줍니다.

감사합니다. 아무런 의미가없는 경우 알려주세요. 내가 정말로 혼란 스러울 때 명확 해지기가 꽤 어렵다.

답변

2

application_controller.rb는 사이드 바 콘텐츠를위한 훌륭한 장소입니다. 예를 들어, 콘텐츠가 사이드 바 탐색과 같이 애플리케이션 전반에 적용되는 경우에는 적절한 장소입니다. 나는, 부분 또는 두 개의, 모든 페이지 요청에 대한 실행 것이다 application_controller의 행동에 채 웁니다 논리에 사이드 바 같은 당신의 HTML을 넣어 추천

:

before_filter :populate_sidebar 

def :populate_sidebar 
    @sidebar_content = foo 
end 
+0

내가 빠른에 감사 정확한 응답 Doug. 나는 IRC에서 같은 반응을 얻었으므로, 올바른 방법을 취한다. –