2014-01-25 2 views
0

내 컨트롤러에서 application.html.erb과 다른 레이아웃 (예 : foo.html.erb)을 사용하여 show 액션이 발생했습니다.레이아웃을 변경하면 변경 사항을 반영하기 위해 새로 고침이 필요합니다.

문제가
class FoosController < ApplicationController 
    layout :resolve_layout 

    def show 
    end 

    private 
    def resolve_layout 
     case action_name 
     when 'show' 
     'foo' 
     else 
     'application' 
     end 
    end 
end 

는 응용 프로그램이 캐시 것 : 여기

<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
    <style type="text/css"> 
     {styles here} 
    </style> 
</head> 
<body> 
    <%= yield %> 
</body> 
</html> 

내가 레이아웃을 해결하고있어 방법에 대한 컨트롤러 코드 : foo.html.erb 스타일은 예를 들어, <head>에 직접로드가 템플릿을 너무 많이 사용하고 show 템플릿을 사용해야하는보기를 클릭하면 새로 고치지 않고 해당 모양이 표시되지 않습니다.

이 문제를 올바르게 처리하고 있습니까, 아니면이 작업을 수행하는 데 더 많은 "레일 방식"이 있습니까? 내가 여기서 성취하고자하는 것은 특정 템플리트에 고유 한 스타일을 그 단일 템플리트로만로드하는 것입니다. 이것이 자산 파이프 라인 문제 일 수 있다고 생각하지만, 나는 아직 레일스에 익숙하지 않기 때문에 확실하지 않습니다.

+0

컨트롤러 코드는 무엇입니까? – Ninigi

+0

머리에 정확하게 스타일을로드합니까? application.html의 head 섹션에서 <% = yield : head %>를 사용하고 content_for : head [여기에 설명 된대로] (http://guides.rubyonrails.org/v2.3.11/layouts_and_rendering)을 사용해 보았습니까? html # using-content-for)? – Ninigi

+0

컨트롤러에서 관련 코드를 추가했습니다. @ 차이 (Chai) - 나는 그것을 읽고 오늘 오후에 그걸 발사 할 것이다. –

답변

0

마치 머리에 살고있는 스타일에 문제가있는 것처럼 보입니다. 상대적으로 간단한 페이지가있어서 인라인 스타일로 이동할 수 있었고 문제가 해결 된 것 같습니다.

관련 문제