J'ai utilisé la méthode exist? Dans l'expression conditionnelle et j'ai écrit le code pour afficher le caractère épuisé vers le produit lorsque le nom de la colonne (item_id) dans la table spécifiée et le produit vendu (item.id) correspondent.
qiita.rb
<% if Order.exists?(item_id: [item.id]) %>
<div class='sold-out'>
<span>Sold Out!!</span>
</div>
<% end %>
Cela peut être évident dans ma façon d'écrire du code, mais s'il y avait un but à faire ce genre de comportement, cette fois le but était d'afficher Sold Out sur les produits vendus.
À cette fin, je n'ai pas trouvé la méthode exist? En une seule fois, mais j'ai d'abord acheté l'article et j'ai enregistré l'item_id avec les informations sur l'article dans la table de commande, j'ai donc remarqué que l'item_id se trouve dans la table de commande.
Il est différent de discriminer l'id et l'item_id du produit sans discernement, donc si item_id existe dans la table de commande, il semble que cela fonctionnera si vous pouvez distinguer l'item_id existant sur la page supérieure et l'item_id dans la table de commande. Après y avoir réfléchi, je voulais comparer l'id du produit et l'item_id sur la page supérieure avec l'item_id sur la table de commande, donc je suis arrivé à la méthode exist?
Quand je l'ai écrit en phrases, je l'ai écrit dans l'ordre, mais en y réfléchissant, j'ai d'abord pensé qu'il pourrait être comparé à item_id dans la table de commande, et j'ai repensé et j'ai trouvé la réponse.
En réfléchissant au comportement souhaité en programmation, j'ai réalisé qu'il était important de réfléchir au processus en détail dans le but abstrait.
Recommended Posts