2012-05-21 2 views
3

Теперь я начинаю с рельсов, и у меня просто вопрос, который я думаю. мне нужно сделать два парциальных в один АЯКС вызова:Оказание частичных просмотров с ajax-вызовами в rails 3.1

У меня есть следующий контроллер:

# GET /hosts/1 
# GET /hosts/1.json 
def show 
    @host = Host.find(params[:id]) 

    respond_to do |format| 
     format.html #show.html 
     format.js 
     format.json { render :json => @host } 
    end 
end 

И соответствующий шаблон (show.js.erb):

$('#tabs-1').html("<%= escape_javascript(render @host) %>"); 

и А неполный файл с именем _host.html.erb

Все это отлично работает. Шаблон «_host.html.erb» отображается на вкладках div-1, но теперь мне нужно добавить какой-либо другой частичный шаблон в другой идентификатор (# tabs-2), но использовать тот же @host Как я могу это сделать ? по умолчанию метод render @host будет использовать файл шаблона «_host.html.erb». Как я могу назвать другое, например _host2.html.erb, и иметь тот же экземпляр @host доступен?

Спасибо, Joao

ответ

8
$('#tabs-1').html("<%= j(render @host) %>"); 
$('#tabs-2').html("<%= j(render :partial => 'host2', :locals => { :host => @host }) %>"); 
Смежные вопросы