4. Working with Controllers - 4.4 Additional Layout Options

4.4 Additional Layout Options

You can specify layout options at the controller class level if you want to reuse layouts for multiple actions.

class EventController < ActionController::Base 
  layout "events", only: [:index, :new] 
  layout "global", except: [:index, :new]
end

The layout method can accept either a String Symbol, or boolean, with a hash of arguments after:

  • String Determines the template name to use.
  • Symbol Call the method with this name, which is expected to return a string with a template name.
  • true Raises an argument error.
  • false Do not use a layout.

The optional arguments are either :only or :except and expect an array of action names that should or should not apply to the layout being specified.

你可能感兴趣的:(4. Working with Controllers - 4.4 Additional Layout Options)