6
votes

Ruby-On-Rails: Rendu partiels sur chaque article dans une liste

J'ai ce qui suit dans une vue (.html.erb): xxx

the posts_show partiel a les suivants: xxx

Mais je reçois l'erreur suivante xxx

aucune idée?


0 commentaires

4 Réponses :


0
votes

Il ne semble pas que vous définissez le @post de la partielle, alors quand cela va évaluer le partiel, il reçoit une référence null.

alternativement, assurez-vous que vos fonctions post-récupération renvoient réellement quelque chose


2 commentaires

Alors, comment puis-je passer l'objet "post" dans le partiel?


Voir une meilleure réponse que la mienne :)



0
votes

Je ne suis pas positif, mais je pense que dans la partielle, vous devez faire post.title pas @ post.title

Désolé si je vous ai mal compris, je suis nouveau dans les rails.


0 commentaires

8
votes

Étant donné que la variable postale de chaque boucle est une variable locale, vous devez la rendre disponible pour le partiel: xxx pré>

Vous pouvez ensuite accéder au titre via la variable locale: P>

<td><%=h post.title %> </td>


0 commentaires

17
votes

Vous pouvez également utiliser simplement les choses en utilisant la: Collection de rendu: partielle. Qui passent chaque élément de la valeur de: Collection à une variable locale partageant le nom de votre partiel.

<%= render :partial => @posts %>


0 commentaires