Rails中只有一个特定页面的不同布局

Jas*_*ett 9 ruby-on-rails ruby-on-rails-3

我想在我的Rails应用程序中为一个特定操作设置不同的布局.我怎么做?

eco*_*gic 26

# controller that calls the page
def action
  render :layout => 'other'
end
Run Code Online (Sandbox Code Playgroud)


Vol*_*ldy 19

class MyController < ApplicationController
  layout "special", :only => :action

  def action
    #action code
  end
end
Run Code Online (Sandbox Code Playgroud)

  • 我没有尝试过,但是如果将另一条线置于默认值之上呢?类似于'layout'normal'#:except =>:action` (2认同)

chi*_*ief 9

 layout :resolve_layout

  .
  .
  .
     private   
      def resolve_layout
       case action_name
         when "new"
          "alternate"
         else 
          "application"
         end
      end
Run Code Online (Sandbox Code Playgroud)