はじめに
railsにおけるeachメソッドの使い方を、極めてあっさり書いてみようと思います。
色々端折っていますが、ご了承ください。
前提
今回はProductテーブルという、下記の様な設計のテーブルのデータを使用し、
登録されている全ての商品の名前と金額と画像を表示させたいと思います。
| Column | Type | Options |
|---|---|---|
| name | string | null: false |
| price | integer | null: false |
| image | string | null: false |
実行
コントローラーにてテーブルのデータを取得します。
(アクションはindexとしています)
def index
@products = Product.all
end
ビューファイルには次のように書きます。
index.html.haml
- @products.each do |product|
= product.name
= product.price
= image_tag(product.image)
これはrubyにおいて、配列の中身をeachメソッドを使って取り出すのと全く同じです。
こうすれば最低限の画面表示ができます。
もちろんこのままだと味気ないので、実際にはclassを設定したり、他のメソッドを使用することになります。
classの設定は次の記事にてあっさり解説します。