3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

each メソッドの使い方について

Last updated at Posted at 2023-03-11

はじめに

オリジナルアプリ実装中にeachメソッドに悩まされました。
理解が深まったので備忘録として残します。
eachメソッドが理解できていなくて悩んでいるという方が一人でもこの記事を読んで少しでもお役に立てたら幸いです。

1. each メソッドとは??

データベース上にある複数のレコード(データ)からレコードを1個ずつ(または一個だけ)取得して、繰り返し処理を行ってくれます。

2.記述方法と解説

example.erb
 [配列].each do | [変数] |
    繰り返し処理
 end

上記がeachメソッドの構造となっています。
[変数]は、eachのdo ~ endの中でしか使えない変数です。ブロック変数と呼ばれます。

index.html.erb
 <% @birthdays.each do |birthday| %>
    <%=link_to '誕生日の詳細情報はこちら', birthday_path(birthday.id), method: :get %>
  <%= (birthday.celebrate_person_name) %>  
  <%= (birthday.date) %>
 <% end %>

上記のコードではbirthdaysテーブルに複数登録されているレコードのカラムの値(この場合はcelebrate_person_nameとdate)を一個ずつ(または1個だけ)を取得してきています。
(birthday.celebrate_person_name)の間にあるドットだけで取得してくれています。

3.まとめ

eachメソッドを使用することによりbirthdaysテーブルに複数登録されているレコード郡を繰り返し処理で1個ずつ操作してくれます。(今回の場合は取得という操作)

eachメソッドは初学者が必ずと言っていいほど躓くところなので頑張って使いこなしていきましょう!!

ここまで読んでいただきありがとうございました。

3
0
0

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
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?