0

ハッシュの配列内のすべてのオブジェクトのパーシャルをレンダリングしようとしています:

私のコントローラー:

@active, @not_active = @objects.partition{ |obj| obj['active'] == 'true' }

私のjs.hamlファイル:

# this code works
- @active.each do |obj|
  $('#' + "#{obj['id']}").remove(); # remove row

# this code doesn't work
- @not_active.each do |obj|
  -p obj # prints the object
  $('#' + "#{obj['id']}").html("#{escape_javascript(render :partial => 'objects/not_active', :locals => {:obj => obj})}");

このコードは、テーブル内の既存の行の一部を再描画する必要があります。しかし、パーシャルでは、ハッシュの代わりに obj = [ ] を取得します..

ルビーループ内でパーシャルをレンダリングするにはどうすればよいですか?

4

1 に答える 1

0

パーシャルをレンダリングしてデータを渡すより簡潔な方法があります。

render 'objects/not_active', obj: obj

これがRails 4のみかどうかはわかりません。

于 2013-08-14T05:58:13.007 に答える