チーム開発 カテゴリ機能実装 商品詳細ページ

商品詳細ページのカテゴリー表示の実装を行いました。

作業部分

f:id:kobegoro:20200722204931p:plain
出品した商品に紐づくカテゴリー情報をDBから引っ張ってきます。

作業内容

controller

def show
    @product = Product.find(params[:id])
    @categories = Category.all
  end

view

              %th
                カテゴリー
              %td
                - @categories.each do |category|
                  - if @product.category_id == category.id
                    = link_to "#" do
                      = category.parent.parent.name
                      %br/
                    = link_to "#" do
                      = category.parent.name
                      %br/
                    = link_to "#" do
                      = category.name

全カテゴリから、詳細を見ている商品のIDを持つカテゴリを抽出して、
あとは.parentメソッドで祖父と親をもってきました。

もう少しエレガントな実装方法にできる気もしましたが、
決めた時間内でできたので、一旦次のタスクへと移りたいと思います。

※この記述だと非常に重くなってしまう為、
@categories = Category.all
後日修正しました。