2011-09-06 4 views
0

사이트 탐색 메뉴를 애플리케이션 도우미의 해시로 채워야합니다. 나는 그것을 올바르게 보았다. 경로 헬퍼가 평가되지 않습니다 ("/"대신 my link tag의 href = "root_path"를 의미). 내 application_helper에서rails app helper 해시 운전 메뉴 목록

:

$navPages = { 
    'Home' => "root_path", 
    'page2' => "page2_path" 

    } 

일부 레이아웃은 일부이든 ERB는 다음과 같다 :

<ul> 
    <% $navPages.each do |ntext,npath| %> 
    <li><%= link_to ntext, npath %></li> 
    <% end %> 
</ul> 

그래서이 설정은 목록이 너무 잘 보이는 얻을 것이다; href는 평가되지 않습니다. 첫 번째 목록 항목 링크 태그 href = "root_path"는 문자열 "/"의 평가 된 버전 대신 .... 나는 소용이없는 몇 가지 사항을 시도했습니다. 이것은 해시 값 저장소와 루비 경로 도우미가 평가되는 방법 및시기를 이해하는 데있어 근본적으로 부족합니다. 나는 시도했다 : 1. 해시에서 따옴표를 제거 (알 수없는 변수/메소드의 오류를 반환) 2. "# {npath} 3."원시 " 다른 몇 가지

어떤 방향이됩니다. 크게 감상 할 수있다.

감사합니다!

답변

1
당신이!
+0

PERFECT! 감사합니다. 평가하는 심볼로 문자열을 변환 할 나타납니다. 감사합니다 문제가 해결되면; – twinturbotom

+0

당신은 :) 답변을 동의하는 것을 잊지 마세요 환영

<% $navPages.each do |ntext,npath| %> <li><%= link_to ntext, self.send(npath.to_sym)%></li> <% end %>