0

データのテーブル ビューをレンダリングするセルを作成しましたが、それを他のテーブル ビューに再利用したいと考えています。そのデータの行ごとに、いくつかの固有の要素を標準の列と混ぜ合わせたいと思います。今のところ、私のセルの単純化された部分バージョンは次のshow.html.slimようになります。

- users.each do |user|
  tr
    / A column unique to User
    td
      = link_to_if current_user == user, "Groups", user_groups_path(user)
    / Common code that can be shared across other tables
    td user.name

このレベルからユーザー固有のコードを抽出し、上から挿入できるようにしたいと考えています。セルのドキュメントには次のように記載されています。

確信が持てない場合は、ビューのネストされた部分を別のセルにカプセル化してください。セルで #cell メソッドを使用して、ネストされたセルをインスタンス化できます。

ただし、新しいセルを単純にインスタンス化するのは困難です (編集: テーブル セル内):

  1. 作成するセルを知る必要があります。
  2. user親セル (私の例では)から情報を渡すことができる必要があります。
  3. 子セルに固有の情報を渡すことができる必要があります (current_user私の例では)。

このタイプの部分レンダリングをセルに挿入するためのオプションは何ですか? それらのいずれかが一般的に推奨されるソリューションですか?

4

1 に答える 1