[RUBY] [Rails] À propos de la collection lors du rendu partiel (lors du chargement d'un modèle partiel)

Lors de l'appel d'un modèle partiel avec des rails cette fois, j'ai appris qu'il est plus facile de passer des variables locales en utilisant la collection, donc je vais le sortir.

Si vous ne connaissez pas la méthode de rendu, veuillez effectuer une recherche.

collection rend très facile l'envoi de variables locales à des modèles partiels

Tout d'abord, il existe un modèle de réponse et un contrôleur comme condition préalable.

def index
@answers = Answer.all
end

Maintenant, la réponse de chaque personne est dans @answer.

Maintenant, si vous utilisez local pour envoyer une variable à un modèle partiel

<% @answers.each do |answer| %>
  <%= render partial: "answer", locals: { answer: answer } %>
<% end %>

Ce sera.

Cependant, dans ce qui précède, si @answers contient 10 informations, render partical sera appelé une fois (10 fois au total). En d'autres termes, cela ralentit.

Par conséquent, la collecte est un moyen simple de retarder les variables en modèles partiels.

Pratique à utiliser la collection

<%= render partial: "answer", collection: @tweets %>

Avec juste cela, vous pouvez envoyer une variable locale à un modèle partiel. Même si 10 éléments d'information sont stockés dans @answers, ils sont transmis ensemble dans un modèle partiel pour créer 10 vues.

Puisque je suis également en phase d'apprentissage, des erreurs peuvent survenir. Nous vous prions de nous excuser pour la gêne occasionnée, mais nous vous serions reconnaissants de bien vouloir nous le signaler.

Recommended Posts

[Rails] À propos de la collection lors du rendu partiel (lors du chargement d'un modèle partiel)
[Notions de base sur les rails] À propos des erreurs lors du chargement de l'écran (NameError, LoadError)
[rails] Comment créer un modèle partiel
Implémenter des itérations dans View en rendant une collection [Rails]
À propos du routage des rails
[Rails] À propos d'ActiveJob,!
À propos du contrôleur Rails
À propos du chargement et de l'initialisation des classes au démarrage de la JVM