次のようなtableをcontent_tagを用いてhelperとして作成したい


Rails で次のようなtableの表を作成する際、いつもif文を用いて実装しております。  
※ slimで記載しております

categories/index.html.slim

[code]

    - if store.categorys.present?
      - store.categorys.each do |category|
          tr
            td = category.id
            td = category.name
            td = link_to '編集', new_store_category_path(store.id)
    - else
      td
      td
      td = link_to '新規作成', new_store_category_path(store.id)
    
[/code]

これで意図した表は作成できており、今回のようにtdの数が少ない時はいいのですが、tdの数が10個近くあるようなtableを作成する場合、可読性がかなり悪くなります。

これを何とかリファクタリングしたいと思い調べたところ、content_tagを用いたヘルパーを使えば実現できるのかもしれないというところまでわかり、content_tagを用いたサンプルコードなどを用いて色々と試しておりました。

しかし、上手くいかず、困っております。

目的としては、複数箇所でこういったif文での分岐で、使いわけるtableのリファクタリングです。よろしくお願いします。




コメントではコードが書けないので、回答側で失礼しますが、質問です。  
リファクタリングしたい、ということですが、範囲が広く求めているゴールが分かりませんでした。  
問題意識が下記であれば、繰り返しを使って、まとめれば良いのではないかしら？と思います。

> tdの数が10個近くあるようなtableを作成する場合、可読性がかなりわるくなります。
[code]

    - if store.categorys.present?
      - store.categorys.each do |category|
        tr
          td = category.id
          td = category.name
          td = link_to '編集', new_store_category_path(store.id)
    - else
      - 2.times.each do 
        td
      td = link_to '新規作成', new_store_category_path(store.id)
    
[/code]

2つなので、`2.times`ですが、10個なら、`10.times`が使えると思います。  
この問題だけでしたら、シンプルに回答できてしまいますので、より具体的なイメージ、擬似コードなどを追加していただけないでしょうか？

