Ruby on Rails - Comment rendre une action sans la mise en page de l'application?

89

J'ai une application de rails et je souhaite rendre une action sans utiliser la mise en page de mon application (qui contient des éléments d'en-tête / pied de page).

Comment pourrais-je faire ça?

doyen
la source

Réponses:

151

Voici une documentation à ce sujet: http://guides.rubyonrails.org/layouts_and_rendering.html

Pour votre question:

render :layout => false

ou

layout false
Marcgg
la source
6
Gardez à l'esprit layout nilque toutes les dispositions de ce contrôleur seront désactivées. Et layout nil, :only => [:action]supprimera également la disposition du contrôleur (actuellement un bogue).
Samuel
4
layout false n'a pas fonctionné pour moi, mais render: layout => false fonctionne.
cman77
Ceci est vraiment utile pour le rendu par exemple des modèles CSV.
fatuhoku
2

Pour Rails 5, dans le contrôleur, pour l'action spécifique:

def action
  render layout: false
end
stevec
la source