2011-01-24 13 views
0

私のビュー(index.html.haml)にhamlまたはhtmlテーブルをレンダリングするつもりです。VIEW(haml)でこの動的テーブルサイズを実装する効率的な方法

このように私は、真または偽の値を保持している文字列の配列を持っている:

str=['true', 'false', 'true', 'true', 'false'] 

文字列配列内の5つの要素がありますが、文字列配列の要素は、ユーザーの入力に基づいて動的です。この要素のそれぞれが意味するのは ['display_color','display_size','display_shape', 'display_owner','display_price']

の場合は、そのプロパティが列に表示されます。

"true-false"文字列配列に基づいて、hamlまたはhtmlテーブルをレンダリングします。値がtrueの場合はテーブルに適切な 'display_ *'が表示されます。テーブルのプロパティは表示されません。例えば

文字列配列は、上記のような値を保持している場合、それらが配列にtrueに設定されているので、私のテーブルには、「display_color」「display_shape」と「display_owner」の列があります。

hamlまたはHTMLでは、この動的サイズテーブルをレンダリングするための効率的なコードブロックを作成するにはどうすればよいですか?どのような例ですか?

答えて

0

このような何かがそれを実行する必要があります。

%table 
    %tbody 
    -str.each_with_index do |s, i| 
     -if s == 'true' 
     %td=array[i] 

あなたは、ヘッダーなどのために同じロジックを適用することができます...

-1

あなたが効率については本当に心配している場合は、文字列配列を使用していませんブール値を格納する。あなたがおそらくあなたの手の外にいることに気をつけましょう。なぜなら、それはおそらくフォームコントロールから来ているからです。彼らが行うベストは整数です。

これらの列はモデルのプロパティですか? もしそうなら、最も効率的な方法は、おそらく配列をとり、表示するプロパティを決定するヘルパーを書くことでしょう。そうでなければDhruva Sagarの答えに行ってください。

申し訳ありませんが、私は今すぐあなたのためのヘルパーを書く時間がありません。今日後で私は1つを編集します。

関連する問題