2014-03-24 3 views
0

이 링크의 href는 다른 컨트롤러의 작업을 가리키는보기에 링크가 있습니다. 내가 필요한 것은 링크를 클릭 할 때입니다. 첫 번째 뷰 div에서 렌더링 할 다른 컨트롤러에 해당하는 뷰가 필요합니다.RAILS 4.0.2 단일 (호출자)보기에서 다른 컨트롤러의 HTML 렌더링

예 : 페이지의 왼쪽에는 메뉴 목록이 있고 페이지 오른쪽에는 콘텐츠 div가 있습니다. 왼쪽 메뉴는 각각 다른 컨트롤러의 작업 /보기에 해당합니다. 왼쪽 링크 중 하나를 클릭하면 해당 컨트롤러의 해당 html을 렌더링해야합니다. 오른쪽에있는 div에 있습니다. 당신의 LINK_TO에 진정한 옵션 :

감사

+0

간단한 작업에서는 ajax를 사용하고 있습니다. –

+0

응답으로 html 콘텐츠를 ajax 호출자에게 다시 보낼 수 있습니까? respond_to do | 형식 | // 내보기에있는 HTML을 아약스 호출자에게 다시 보낼 수 있습니까 end – Pluto

+0

아약스로 레일의 흐름을 알지 못했습니다. –

답변

0

이 일의 레일-Y 방법은 리모컨을 사용하는 것입니다. format.js에 응답하도록 컨트롤러를 설정하고 js.erb 템플릿을 설정하여 해당 내용을 바꿉니다.

<%= link_to 'Page 2', page_2_path, remote: true %> 

<div class="content"></div> 

컨트롤러 :

class PagesController < ApplicationController 
    def page_2 

    end 
end 

조회수 : 메뉴/페이지 내용에 대한

# pages/_page_2.html.haml 
<h1>Some content</h1> 

# pages/page_2.js.erb 
$('.container').html('<%= escape_javascript(render(partial: 'pages/page_2')) %>'); 

, 당신이 찾고있는 느낌 4의 turbolinks 당신이 원하는 것을 위해 꽤 좋은 느낌을 줄 레일 달성하기.

관련 문제