Qiita初投稿です。
現在、Ruby on RailsでECサイトの作成をしています。
商品一覧表示にする際に、以下のようにparamsの中身(?)がビューの下部にずらっと表示されてしまう現象が起こりました。
ビューの下部にこのように表示されてしまう
#<Item id: 5, title: "あああ", artist: "あああ", text: "あああ", genre_id: 15, country: "JP", format_id: 2, status_id: 2, price: 500, stock: 1, created_at: "2020-09-30 15:55:20", updated_at: "2020-09-30 15:55:20">,# <Item id: 4, title: "いいい", artist: "いいい", text: "いいい", genre_id: 13, country: "JP", format_id: 2, status_id: 2, price: 5000, stock: 1, created_at: "2020-09-30 15:32:51", updated_at: "2020-09-30 15:32:51">,
以下略
#app/views/items/index.html.erb
<%= render "shared/header" %>
<div class="main-wrapper">
<div class="item-wrapper">
<%= @items.each do |item| %>
<div class="item">
<div class="item-image-content">
<%= image_tag item.image, class:"item-image" %>
</div>
<div class="item-format">
<%= item.format.name %>
</div>
<div class="item-artist">
<%= item.artist %>
</div>
<div class="item-title">
<%= item.title %>
</div>
<div class="item-price">
<%= item.price %>円(税込み)
</div>
</div>
<% end %>
</div>
</div>
はじめはタグの閉じ忘れかと思いましたがどうやら違うようです。
実はとても単純なミスでした。
<%= @items.each do |item| %>
ビューに実際に表示しないのに、<%= %>とイコールをつけてしまっていました。
<% @items.each do |item| %>
=を外すとずらっと表示されていたparamsの中身はなくなりました。
ビューに表示しないものに = をつけてしまうと、このようなことになるんだなという新たな学びでした。