0

ROR で Mongodb を使用しています。これはコマンドです:

<%= render partial: "show", collection: @h %>

どこ@hですか

@h=[
  {"folder"=>"Default", "weight"=>"100.0", "stocks"=>[
    {"id"=>"id1", "name"=>"Ajanta Pharma Ltd.", "weight"=>"57.0"},
    {"id"=>"id11", "name"=>"Avanti Feeds Ltd.", "weight"=>"5.1"}, 
    {"id"=>"id34", "name"=>"MPS Ltd.", "weight"=>"2.5"}, 
    {"id"=>"id89", "name"=>"Poly Medicure Ltd.", "weight"=>"3.7"}]}, 
  {"folder"=>"low margin", "weight"=>"0.0", "stocks"=>[
    ]}, 
  {"folder"=>"fjf", "weight"=>"0.0", "stocks"=>[
  ]}
] 

_show.erbがこれだとします

i am line

私が得ている出力はi am linei am linei am line実際にはありません。の倍のフォルダ内@h* コンテンツ内_show.erb私がこれに変更@hした場合

@h=[
  {"folder"=>"Default", "weight"=>"100.0", "stocks"=>[
    {"id"=>"id1", "name"=>"Ajanta Pharma Ltd.", "weight"=>"57.0"},
    {"id"=>"id11", "name"=>"Avanti Feeds Ltd.", "weight"=>"5.1"}, 
    {"id"=>"id34", "name"=>"MPS Ltd.", "weight"=>"2.5"}, 
    {"id"=>"id89", "name"=>"Poly Medicure Ltd.", "weight"=>"3.7"}]}, 
  {"folder"=>"low margin", "weight"=>"0.0", "stocks"=>[
    ]}` 
] 

次にi am linei am line、フォルダが 2 であるため、no に関係なく 1 回の出力のみが必要な理由が示されます。フォルダの . どうやってやるの?

4

1 に答える 1

0

Done 、実際には :collection オプションを介してコレクションをパーシャルに渡すと、パーシャルはコレクション内の各メンバーに対して 1 回挿入されます。

だから私はこれを使用しました: <%= render partial: "show", object: @h %>

于 2013-09-25T12:32:44.837 に答える