現在レビューアプリを作成しています。
そこであるitemに対して関連付けられたreviewの一覧を表示したいと考えています。
itemのDB
id | name |
---|---|
1 | name1 |
2 | name2 |
reviewのDB
id | item_id |
---|---|
1 | 1 |
2 | 2 |
3 | 1 |
このようなデータがあったら、itemのid=1のview表示(/items/1)に対しは、
reviewのDBにあるitem_id = 1の内容を表示する機能を作成したいと考えています。
現在下記のコードになっていますが、うまくいかないみたいです。
どのようにすればよろしいのでしょうか?
model
ruby
1has_many :reviews
controller
ruby
1def show 2 @item = Item.find(params[:id]) 3 @reviews = Review.all 4 @review = Review.find_by(item_id: @item.id) 5end
view
ruby
1show.html.erb 2<%= render '/reviews/timeline' %>
review
model
ruby
1 def user 2 return User.find_by(id: self.user_id) 3 end 4
controller
ruby
view
ruby
1 2_timeline.html.erb 3<!-- 4 review timeline 5--> 6 <% @review_users.each do |review| %> 7 <div class="cd-timeline-img"><img src="https://placehold.jp/150x150.png" alt=""></div> 8 <div class="cd-timeline-content"> 9 <p><%= review.comment %></p><span class="cd-date"><%= review.updated_at %></span> 10 </div> 11 <% end %>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。