2014-06-23 53 views
1

這是我之前發佈的內容的編輯。我厭倦了這篇文章中建議的幾件事。我認爲即將獲得它,但需要更多的調整。如何使用主幹從列表視圖中編輯記錄Js

我希望從我的列表編輯記錄:這是我的看法是如何設計:

var EditSubAccount = Backbone.View.extend({ 
    render: function(id,options){ 
      var self= this; 

       var subaccount = new SubAccountModel([],{id: this.options}); 
       subaccount.fetch({ 

        success: function(subaccount){ 
         var d = subaccount.toJSON(); 
         var user = d.data.items; 
         //user gives the Json o/p as shown below 
         var template = $("#sub-account-list").html(_.template(edittmpl, {user:user})); 


       }) 
      } 

這裏user給出了JSON對象如下:

[ 
{ 
    accountType: "Customer" 
    active: true 
    name: account 1 
    id: 87384738 
    billingContactInfo: 
    { 
     address1: "1234 asdf" 
     address2: "" 
     city: "mountain view" 
    } 
    } 
] 

和我的HTML :

<form class="edit-form" method="PUT" > 
     <table> 
      <tbody> 

     <tr> 
     <td> <input type = "text"class="name" value= "<%= user ? user.name : '' %>" /></td> 
    <!-- get undefined when on `user.name` --> 
    </tr> 

    </tbody> 
    </table> 
    <% if (subaccount){ %> 

    <input type="hidden" value = "<%= user.id %>" /> 

    <% } %> 

     <button class="save" method="PUT">Save</button> 
     <button class="cancel">Cancel</button> 
    </form> 

和我的路由器,即時初始化Editaccount:

var AppRouter = Backbone.Router.extend({ 
    routes: { 
     'edit/:id' : 'editSubAccount', 
} 
    editSubAccount: function(id){ 
    var editsubaccount = new EditSubAccount(id); 
     editsubaccount.render({id:id}); 
    } 

    }); 

當我嘗試點擊編輯鏈接它顯示正確的'id'我需要編輯,但窗體顯示空白,而不是字段填充。下面是我的列表如何: enter image description here

我不知道什麼即時消息缺少在這。請任何人有任何想法?

+0

您是否檢查過模型是否正確指定給視圖?你可以用'''this.model.toJSON()''代替描述性的變量賦值。 –

+0

您不能將id傳遞給視圖。 ID只能用於如果你設置了'idAttribute' – Muhaimin

回答

1

當你用模板綁定模型時,試着做'subacount.toJSON()',這可能是問題所在。

但照顧你的渲染功能,它正在做很多事情,隨着你的代碼的成長,可能無法維護。

我有一個關於它的帖子,看看這裏,以幫助這個問題http://www.rcarvalhojs.com/dicas/de/backbone/2014/06/04/5dicas-backbone.html

不幸的是,這只是在葡萄牙推出。嘗試使用谷歌翻譯

希望它有幫助。

+0

,所以當我這樣做時:subaccount.toJSON),我意識到我的數據是空的:我的data.count爲0,這意味着它不會從模型中獲取數據在上面的編輯代碼中,我指定了我寫我的模型的方式 – user2942566

+0

感謝文章幫助 – user2942566