2009-10-07 6 views
0

<% = rendement%> fonctionne parfaitement si mon modèle s'appelle layouts/application.erb. Cependant, si je change le modèle à autre chose, alors le rendement ne fonctionne pas. Par exemple, ma méthode de commande est<%=yield%> ne fonctionne pas dans les modèles nommés

render :template=>'layouts/survey' 

et le bon modèle se rend, mais sa méthode de rendement ne montre pas la sortie du point de vue de l'action en cours. Quelle simple chose me manque? J'ai également essayé

render :action=>"index", :template=>"layouts/survey" 

en vain.

Répondre

5

Etes-vous sûr de vouloir utiliser :template et non :layout?

+0

Merci, c'était ça! –

+0

Je vais donner la meilleure réponse à dmathieu, car il vous a battu au poinçon et a 500 points seulement. Merci encore. –

+0

Ne m'a pas battu au punch mais c'est cool;) –

4

Par "modèle", vous voulez dire la disposition apparemment. Alors l'option n'est pas la bonne. C'est: mise en page

render :action => 'index', :layout => 'survey' 
+0

À quoi servirait le modèle, alors? –

+1

Cela pourrait aider à expliquer - http://guides.rubyonrails.org/layouts_and_rendering.html#rendering-an-actions-template-from-another-controller –

+0

Hmmm ... Je vais devoir voir la différence entre: template = > et: action =>, alors ... merci Andy. –