Rails 4:在控制器中将布局设置为false

Mar*_*ear 5 ruby-on-rails ruby-on-rails-4

在Rails 4应用程序中,我尝试将布局设置为falsenil.我在我的控制器内尝试了这个:

render :layout => false
Run Code Online (Sandbox Code Playgroud)

但是这给出了这个错误:

undefined method `render'.
Run Code Online (Sandbox Code Playgroud)

如何阻止此控制器使用默认布局文件?

vee*_*vee 8

要禁用控制器的布局:

class FooController < ApplicationController
  layout false
  ...
end
Run Code Online (Sandbox Code Playgroud)


Kir*_*rat 6

场景1:要禁用控制器的所有操作的布局,请将其用作:

class FoosController < ApplicationController
   layout false  ## Note it is not within any action

   def create
   ...
   end

...
end
Run Code Online (Sandbox Code Playgroud)

场景2:要禁用控制器特定操作的布局,请将其用作:

class FoosController < ApplicationController
  ...
  def show
   ...
   render layout: false
  end
  ...
end
Run Code Online (Sandbox Code Playgroud)