다른 뷰 (게임 및 프로모션)에서 사용할 부분을 빌드 중입니다. 내가보기에 부분을/응용 프로그램레일, 부분에 경로 변수 전달
<%= content_tag :article, class: ['article'] do %>
<a href="#">
<%= image_tag item.thumbnail %>
</a>
<h2><%= item.name %></h2>
<p><%= item.description %></p>
<p>
<%= link_to 'Read more', "#" %>
</p>
<% end %>
을 만든 내가보기 게임에서 호출이 (또는 프로모션)보기 :
그것은 채우고 부분을 렌더링하기 위해 잘 작동<% @games.each do |item| %>
<section>
<%= render 'application/item_synopsis_builder', item: item %>
</section>
<% end %>
하지만, 나는 동적으로 임시 #을 < % = the_right_path =>로 바꿀 수 있도록 view_path를 부분적으로 전달하는 방법을 배제 할 수 없다.
<%= render partial: 'application/item_synopsis_builder', locals: {item: item, path: game_path } %>
을하지만 난 그냥 오류 메시지가 얻을 :
내가하려고 노력No route matches {:action=>"show", :controller=>"games"}
을하지만 HREF = "#"으로 부분을 렌더링하는 경우, 그것을 잘 렌더링합니다.
나는 또한 href="<%= "#{item}_path" %>"
와 함께 나의 행운을 시험해 보았지만, 그것은 단지 객체 항목의 ref를 출력했다.
건배
Game_path를 게임보기/컨트롤러/다른 곳에서 사용할 수 있습니까? –
예, 그렇습니다. 그러나'game_path'는 특정 게임 (쇼, 업데이트, 파괴에 사용되는)의 경로이므로, id를 검색하기 위해서는 게임 객체가 필요합니다. 인덱스 페이지에 링크하려면'games_path' ('s'에 주목하십시오)를 사용하십시오. – ksol
아니요 개별 게임의 경로를 렌더링하고 싶습니다. 게임 목록을 만들고 해당 페이지에 링크해야합니다. –