Je rends une partielle comme: donc à l'intérieur de _some_parttial.html.erb code> Je rends deux autres partiels comme: p>
<% #foo.nil? #=> false %>
<%= render :partial => 'widgets/another_partial', :locals => {:foo => foo} %>
`<%= render :partial => 'widgets/another_partial_again', :locals => {:foo => foo} %>`
3 Réponses :
résolu. S'avère que je rendais également la même partielle du contrôleur sans envoyer les variables locales appropriées. Merci quand même !!! p>
En fait, j'ai eu le même problème et ma solution était exactement la même - je l'ai compris quand j'ai vu votre erreur: p
Ugh moi aussi! Ha. J'ai changé mon Haml de: "- Si Myvar" to "- si défini? (Myvar) && myvar"
même ici, passait la partielle à Ajax, a oublié de changer le symbole
J'ai eu le Cependant, j'ai eu un Différent problème qui cause mon problème, alors je pensais que je partagerais ma solution au cas où elle aide toute autre chose. (Cette page a été le premier résultat lorsque j'ai Googled cette erreur après tout) p> essentiellement simplement que vous utilisez Ie p> pas comme je faisais: p> une variable locale ou une méthode locale indéfinie non définie code> erreur monte pour moi aussi lorsque je rendu partiel avec
: locaux code> défini.
: partielle => "chemin / à / partiel ' code> dans votre appel à
rendu code>. p>
<%= render 'widgets/some_partial', :locals => {:foo => 'bar'} %>
+1 @ asgeo1 étrange que vous avez besoin : partiel code> pour le faire fonctionner, mais cela fonctionne effectivement!
Wow!!! Merci ... Je suis juste en train d'apprendre Ruby et j'étais totalement confus sur cette erreur. J'aimerais pouvoir mod-up plus de points.
Cela a résolu ma question aussi, mais je suis vraiment curieux de savoir pourquoi le Partial: "Nom en partie", locaux: {FOO: "bar"} code> doit être utilisé. Je comprends que nous sommes en fait i> rendant une partielle. Ce que je ne comprends pas, c'est comment cela diffère d'une vue.
toujours utile en 2015!
heurté dans cette très ancienne question parce que je suis confronté au même problème.
Il est avéré que avec des rails 4+ si vous n'utilisez pas de collections ni de mise en page, le bon moyen est le suivant: comme documenté ici . P> P>
Qu'entendez-vous par «inaccessible»? Est-ce qu'il jette une variable locale
indéfinie ou une méthode code> ou est-ce
nil code>? Pouvez-vous montrer le code qui utilise
foo code> sur ces sous-partielles?
Il jette une variable locale indéfinie
Le code était simple: <% = foo%>