eachに関連する豆知識
◇mapメソッドでのeach メソッド
<%= @blog.tags.map(&:name).join("\\n")
%>
↓
上記のコードは以下の書き方を省略して書いたコードになる。
<%= blog.tags.map { |tag| [tag.name] } %>
✍️join
joinは情報を連結して取得する。
✍️("\n")
\nがで情報1つづつ空白で分けて取得してくれる。
◇pluckメソッド
eachメソッドと同じことができる。
blog.tags.pluck(:name).join(', ')
pluckの方がeachよりもパフォーマンスが高い場合もある。
◇結論
・特定の情報のみ取得するときはpluckのが処理が早い
・2000回とか連続して情報を取得する時はmapのが早い(SQLの発行がmapは1回で済むため)
pluckは毎回SQLが発行されるから大量処理には向かない