必要な機能
1.トップページから商品をクリックすると商品詳細ページに移動できるようになること
2.ログイン中のユーザー、投稿主ではないログイン中のユーザー、ログインしていないユーザーで詳細ページの表示が変わること
1.トップページから商品をクリックすると商品詳細ページに移動できるようになること
①showアクションのルーティング設定
画像は省略。
②showアクションのコントローラー設定
③showアクションに商品の情報を入手するset_productメソッド作成
④beforeアクションに適用
https://gyazo.com/582372a527a8e275f22744452882c11e
*product_path(product.id)のproductをインスタンスとして使わない理由は、親要素のeach文にインスタンスを取り入れっており、ブロック変数productを使用する必要があるため
⑥商品情報を表示させるためのビュー修正
省略
2.ログイン中のユーザー、投稿主ではないログイン中のユーザー、ログインしていないユーザーで詳細ページの表示が変わること
if文のネスト構造によって、elseで表示する値は、<% if user_signed_in?>は真だが、
<% if current_user.id == @product.user.id %>
は負である、という条件にできる
そして、両方違う場合は何も返さない、という結果にできる
イメージとしては、ザルの上に更に穴の小さいザルを載せるかんじ。