gpt4 book ai didi

ruby-on-rails - rails - 使用 AJAX 处理布局 content_for

转载 作者:行者123 更新时间:2023-12-04 06:36:13 26 4
gpt4 key购买 nike

我有一个应用程序布局模板:

<%= yield(:railed) %>

处理右 rails 中的接触(右列 300 像素)。在我使用的实际 DEF SHOW 页面中:
<%- content_for(:railed) do -%>
HTML STUFF goes here
<%- end -%>

我现在遇到的问题是,对于我的一个 Controller ,我使用 AJAX 来点击 DEF Show,并将内容注入(inject)页面。由于布局模板未在 format.js 响应中使用,因此这项工作正常,因为它不会获得被限制的内容。

那么,我可以通过 AJAX 请求获得带有栏杆的内容显示,而不必为 AJAX 和非 AJAX(直接 URL)写入单独的页面,这是一种聪明的方法。

想法?我知道一些 Rails 天才已经想通了:)

我的 Controller :
  def show
@thing = Thing.find(params[:id])

respond_to do |format|
format.html # show.html.erb
format.js
end
end

显示.js.erb:
<%= render :partial =>"thing/show" %>

最佳答案

这有点骇人听闻,但这就是我在 rails 3.1 中使用 haml 和 jquery 的方式:

显示.html.haml:

- if request.xhr?
#content_for_sidebar.hidden
=@view_flow.get(:sidebar)

ajax_callbacks.js:
$("#nav a[data-remote]").live('ajax:complete', function(status, xhr) {
$($(this).attr('rel')).html(xhr.responseText);
$('#sidebar').html($("#content_for_sidebar").html());
$("#content_for_sidebar").remove();
});

关于ruby-on-rails - rails - 使用 AJAX 处理布局 content_for,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4179943/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com