#初めに
ポートフォリオを作成するにあたり、ランダム表示を実装しました。
プログラミング歴4ヶ月の初学者でも簡単に実装できたのでメモを残します。
もし良かったら、参考にしてみてください。
#環境
・Ruby '2.3.8'
・Rails '5.2.3'
#前提条件
bookというテーブルに、titleとcontentカラムがあるとします。
#実装方法
実装方法はは簡単でコントローラーとビューに記述するだけです。
##コントローラー
books_controller.rb
#5件表示
@random = Book.order("RANDOM()").limit(5)
#全件表示
@random = Book.order("RANDOM()").all
limitを設定することで表示される件数を指定することができます。
###注意点
mysqlを使用しているとエラーが発生します。
その場合は、以下のように記述する必要があります。
*(RANDOMをRANDにしないといけません。)
books_controller.rb
#5件表示
@random = Book.order("RAND()").limit(5)
#全件表示
@random = Book.order("RAND()").all
##ビュー
index.html.erb
<% @random.each do |book| %>
<%= book.title %>
<%= book.content %>
<% end %>
以上で実装完了です。
#参考資料
railsでランダムに複数のレコードを取得する
#最後に
たったこれだけで実装できます。
もし良かったら試してみてください。
最後までお付き合い頂きましてありがとうございます。