Rails ActiveRecordのデータ取得
モデルに従属している子モデルの重複なしリストを取得したいです。
現在は以下のようにしています。
@posts = Post.includes([:tag]).where(user_id: current_user.id) @tags = @posts.map { |p| p.tag }.uniq
@postsも@detailsもview側で利用します。
モデルの設定
class Post < ApplicationRecord belongs_to :tag end class Tag < ApplicationRecord has_one :post end
1つのPostに付けるTagは1つだけ。
そもそもmodelの関連付けがおかしいような・・・。
発生している問題
- Rails初心者のため、データ取得のベストプラクティスがわからず。。お教えください。
補足情報(FW/ツールのバージョンなど)
Rails5 MySQL
回答1件
あなたの回答
tips
プレビュー