はじめに
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の設定
は次の記事にてあっさり解説します。