需要两次调用'PUT'方法来更新记录 - BackboneJs

时间:2014-07-18 21:14:09

标签: json backbone.js

我有一个api,我打电话来更新当前记录。但是,当我使用' PUT'方法,它成功返回说更新的记录,并在我的json对象中显示更新的记录。但是在UI中,它并没有反映在第一个PUT'上。但是当我第二次尝试更新同一记录时,它会更新记录。

我很想知道这里发生了什么: 以下是使用以下内容的编辑视图:

点击更新按钮时会出现updateForm函数:

var EditSubAccount = Backbone.View.extend({
     initialize:function () {
        theid = this.options
    },
events:{
    'click .save-edit' : 'updateForm',
    'click button.cancel-edit': 'cancel'
},
updateForm: function(event){
            event.preventDefault(); 
            var self = this;            
             var editForm = $('#edit-form').serializeJSON();  
             var editaccnModel = new EditModel([],{});

             editaccnModel.save(editForm, {
                success: function(){
                    $('.loading-bar').show();
                    window.location = "#sub-account?id=" + theid;
                // window.location routes to the list of records page: "#sub-account?id=12132434"   
                },

            });
        },    
    });

及以下是编辑模型:

define([
      'underscore',
      'backbone',
      'collections/subAccountCollection'
    ], function(_, Backbone,SubAccountCollection){
      var EditModel = Backbone.Model.extend({
         initialize: function(models, options) {
            },    
          url: function() {


            return '/api/1.0/edit/'
      },
    });

      return EditModel;
    });

我不确定为什么它不会在第一次' PUT'上更新,尽管该方法在更新时返回成功并在json中显示更新的信息。但它没有更新在ui,它只更新第二个PUT .. :( 任何人有任何想法???谢谢!

0 个答案:

没有答案