how to render partial on everything except a certain action

content-for, partial, render, ruby-on-rails-3

Solution

Replace your render with this:

<%= render 'layouts/header' unless @disable_nav %>

Then you can simply set `disable_nav` to true in any controller action you like:

def landing_page
  @disable_nav = true
end

As a `before_action`, which I'd encourage over the above:

application_controller.rb

def disable_nav
  @disable_nav = true
end

my_controller

before_action :disable_nav, only: [:landing_page]

Problem

I have a _header.html.erb partial which is where I put my navbar on my launch page I don't want to display the navbar. this is the `body` of application.html.erb ``` <body> <%= render 'layouts/header' %> <div id="container"> <%= yield %> </div> </body> ``` How do I render it on every action except specific actions on specific controllers?

Original source