2

「保存」メソッドのオプション内に渡すことは可能ですか - リクエストの異なる URL/パスですか?

モデルのデフォルトの urlRot は -->urlRoot: "/users"

そのようなことをすることは可能ですか:

this.model.save({
           'userName': $('#userName').val(),
           'password': $('#password').val()},{

            url: "/users/login",

            success: function(model, response, options) {

            }, 

今回のリクエストは、「/users」ではなく「/users/login」に送信されますか?

4

1 に答える 1

3

ドキュメントから:

urlmodel.url()

サーバー上でモデルのリソースが配置される相対 URL を返します。モデルが別の場所にある場合は、このメソッドを正しいロジックでオーバーライドしてください。"/[collection.url]/[id]" の形式の URL を生成し、モデルがコレクションの一部でない場合は "/[urlRoot]/id" にフォールバックします。

urlしたがって、モデルに独自の関数を提供できるように見えます。

例:

var MyModel = Backbone.Model.extend({
    use_custom_url: false,
    url: function() {
        if (use_custom_url) {
            return "/users/login";
        } else {
            return Backbone.Model.prototype.url.apply(this);
        }
    }
});
于 2012-11-20T14:13:35.373 に答える