Ruby on rails 禁用URL中布局的某些部分

Ruby on rails 禁用URL中布局的某些部分,ruby-on-rails,popup,Ruby On Rails,Popup,我正在构建我的第一个rails应用程序,现在我遇到了一个问题。 我有一个应用程序布局,其中包括页眉和页脚(当然还有内容)。现在我在一个视图(我使用)中有一个弹出窗口,它工作得很好,只是我不想在通过ajax加载的页面中显示页脚 我不知道我该怎么做。。。有没有办法将类似此选项的内容添加到URL中? 如果您能告诉我如何解决这个问题,我会非常高兴。打开弹出窗口时,您可以这样做 @popup_displayed = true 然后在布局中 <%= render 'layouts/footer' u

我正在构建我的第一个rails应用程序,现在我遇到了一个问题。
我有一个应用程序布局,其中包括页眉和页脚(当然还有内容)。现在我在一个视图(我使用)中有一个弹出窗口,它工作得很好,只是我不想在通过ajax加载的页面中显示页脚

我不知道我该怎么做。。。有没有办法将类似此选项的内容添加到URL中?

如果您能告诉我如何解决这个问题,我会非常高兴。

打开弹出窗口时,您可以这样做

@popup_displayed = true
然后在布局中

<%= render 'layouts/footer' unless @popup_displayed %>

是否需要更改弹出窗口中显示的页面布局?如果是,请检查
:呈现方法的布局
选项。您可以使用其他布局,也可以根本不使用布局

您可以在您的控制器中执行此操作。为“无页脚”页面创建新操作(不要忘记修改routes.rb)

或将额外参数传递给标准操作(/user/1?footerless=1)


这听起来不错,但是否也可以以某种方式在URL中设置布局?(我正在通过AJAX加载另一个页面)这可以工作,但我不知道如何从客户端设置显示的
@popup\u
。我是否可以将参数添加到所有路由或类似的内容中,使其成为URL中的一个选项?
def show_footerless (user/1/show_footerless)
  @user = User.find(params[:id])
  render "show", :layout => "footerless" # or :layout => nil
end
def show
  @user = User.find(params[:id])
  if params[:footerless]==1
    render "show", :layout => "footerless" # or :layout => nil
  else
    render "show"
  end
end