4

Backbone.jsからRailsバックエンドにオブジェクトを送信しようとしています。現在、モデルを呼び出すsave()と、これがサーバーに送信されます。

{"program_id":1,"issuer_id":4}

しかし、Railsは次の形式でそれを期待しています。

{"program_issuer_link":{"program_id":1,"issuer_id":4}}

save()モデルを呼び出すときにBackbone.jsからRailsに送信されるJSONオブジェクトにこのカプセル化を行う方法はありますか?ドキュメントを調べましたが、何も見つかりませんでした。

4

1 に答える 1

6

backbone-rails宝石を使用している場合は、このように行うことができます。

var User = Backbone.Model.extend({
   paramRoot: 'user'
});

toJSONこのようにメソッドをオーバーライドすることもできます

var User = Backbone.Model.extend({
  toJSON: function(){
    return {user: _.clone(this.attributes)}
  },
});
于 2012-12-30T02:21:46.867 に答える