static_pages 뷰를 정리하기 위해 발표자 (여기에 보이는 것처럼 : http://railscasts.com/episodes/287-presenters-from-scratch?view=asciicast)를 사용하고 싶습니다.하지만 그의 메소드는 static_pages가 사용하지 않는 기본 모델에 의존하는 것 같습니다. 있다. 정적 홈 페이지에이 방법을 사용할 수 있습니까? (잘 작동하고 이는 해당 모델을 가지고 않음)관련 모델이없는 발표자 (Ryan Bates의 스타일)
내 사용자 설정은 다음과 같습니다
Presenter:
class UserPresenter < BasePresenter
presents :user
def h
@template
end
def admin_text
if user.admin?
'This is an admin'
else
'This is not an admin'
end
end
end
Users/Show:
<% present @user do |user_presenter| %>
<div class="row">
<dl>
<dt>Username:</dt>
<dt><%= @user.username %></dt>
<dt>Email:</dt>
<dt><%= @user.email %></dt>
<dt><%= user_presenter.admin_text %>
</dl>
</div>
<% end %>
나는를 사용하고 싶습니다 유사한 구조를 렌더링 내 _header
부분 정리 application.html.erb
에서의 일부는 다음과 같습니다
from _header.html.erb:
<% if current_user && current_user.admin? %>
<li><a href="#">All Notes</a></li>
<% end %>
가 어떻게 뷰에서이 논리를 이동하는 발표자를 사용하고,이 같은 뷰 쇼 뭔가 할 수 있습니다 :
을static_presenter.admin_all_notes
home.html.erb
에 필요한보기 코드를 제시 하시겠습니까?
가능한 최선의 방법으로이 질문을 던지 겠지만 Ryan Bates와 같은 발표자가 해당 모델이없는 static_pages 뷰를 정리하는 데 사용하는 것이 목표입니다.
감사합니다.
편집 :
내가 정적 페이지를 포장하는 방법에 대해 구체적으로 혼란 스러워요 (예 home.html.erb
을) 어떤이 블록에 전달하고,이 다음과 같은 방법 발표자 클래스의 방법을 참조 정적 페이지에서.
업데이트 됨, 감사합니다. – jackerman09