LoginSignup
1
0

More than 3 years have passed since last update.

[Rails] ビューにparamsの中身が全表示されてしまう問題

Posted at

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の中身はなくなりました。
ビューに表示しないものに = をつけてしまうと、このようなことになるんだなという新たな学びでした。

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0