Как удалить макет приложения с страницы Ruby on Rails?

Как удалить макет application.html.erb из рендеринга на определенной странице. Теперь он отображается на всех страницах моего приложения.

Ответ 1

Вы можете переопределить рендеринг по умолчанию на уровне контроллера.

class Admin::HomeController < Admin::BaseController
  layout "admin"

Вы также можете переопределить рендеринг макетов на уровне действия контроллера:

def show
  render :layout => "layout_for_show_only"
end

И если вы действительно в отчаянии, вы можете переопределить макеты в представлении:

<%= render "print_view", :layout => "print" %>

См. руководство по отличным направляющим по теме: макеты и рендеринг в Rails

Иан.

Ответ 2

Вы можете просто добавить к контроллеру:

layout false, only: [:show, :edit]

что означает, что макет приложения не будет отображаться для показа и редактирования страниц