2010-10-08 8 views
0

La plupart de mes vues seront requis une enveloppe de 10px de remplissage ,,, mais quelques ne ...Rails 3, CommentFaire - Passer un paramètre à la application.html.erb

Je pensais faire quelque chose comme celui-ci dans le contrôleur de vue:

respond_to do |format| 
    format.html { render :layout => true, :padding => 'false' } 

Et puis dans le application.html.erb ont un IF pour ne pas ajouter une classe de remplissage si: rembourrage est faux ... Mais l'idée ci-dessus ne fonctionne pas, la le remplissage de variable n'est pas passé.

Des idées? Ou des solutions plus propres/intelligentes? thxs

Répondre

1

Vous devez les mettre dans le hachage :locals:

render :layout => true, :locals => { :padding => false } 
+0

très cool. Le problème est pour tous les contrôleurs qui ne passent pas de remplissage à application.html.erb, le site maintenant des erreurs avec: variable locale non définie ou méthode 'padding 'pour # <# : 0x102f27c38> – AnApprentice

+1

@TheApprentice vous pouvez protéger contre cela avec 'si défini? (remplissage) && padding' de sorte que vous vérifiez d'abord l'existence de la variable. –

Questions connexes