0

GroupMembers のような Rails コントローラーを与えます。update メソッドに投稿すると、Rails は次のようにパラメーターを期待します。

[group_member][admin]
[group_member][user_id]

backbone.js を使用して、ビューにコレクションを設定して保存すると、属性の末尾に [group_member] がないコレクションがポストされ、レールが混乱します。

バックボーン+レールを使用するときにこれを処理する方法はありますか?

ありがとう

4

1 に答える 1

1

3.1を超えるレールで作業している場合は、次のように設定することで簡単にこれを実現できます。

# in config/initializers/wrap_parameters.rb
ActiveSupport.on_load(:action_controller) do
  wrap_parameters format: [:json]
end

したがって、着信group_memberは{:admin => true、:user_id => 42}としてコントローラーに送信され、{:group_member => {:admin => true、:user_id=>42}}に変換されます。詳細についてはrails_apiを参照してください。 。

逆に、それは動作します(rails_apiを参照):

# in config/initializers/wrap_parameters.rb
ActiveSupport.on_load(:active_record) do
  self.include_root_in_json = false
end
于 2012-07-04T15:40:20.243 に答える