2013-03-01 77 views
0

我開始學習Ember.JS一個星期,我不明白他們的一部分:當我使用一個動作(像一個按鈕時得到索引控制器的模型點擊)。獲取與Ember.js功能的索引模型rc1

有我的代碼的一部分:

<script type="text/x-handlebars" data-template-name="index"> 
    <button class="btn btn-danger" {{action "addPost"}}> test</button> 
</script> 

還有就是我的IndexController:

App.IndexController = Ember.ArrayController.extend({ 
    addPost: function() { 
     var po = this.controllerFor('index').get('model'); 
     console.log(po); 
      po.createRecord({ 
       title: "YOLO", 
       description: "Simply", 
       date: "2013-03-01" 
      }); 
    } 
}); 

我的模型:

App.Post = DS.Model.extend({ 
    title: DS.attr('string'), 
    description: DS.attr('string'), 
    date: DS.attr('date') 
}); 

所以,當我登錄不.get('model'),我我有一個類返回,當我使用它時,我已經得到了同樣的結果。所以爲什麼 ?這是正常的嗎?在這兩種情況下,我有一個錯誤,他說「[對象對象]沒有方法createRecord」。

非常感謝您的幫助。

回答

0

要創建新記錄,只需調用模型類本身的createRecord方法即可。

試試這個:

App.IndexController = Ember.ArrayController.extend({ 
    addPost: function() { 
    var po = App.Post.createRecord({ 
     title: "YOLO", 
     description: "Simply", 
     date: "2013-03-01" 
    }); 
    } 
}); 
+0

它的工作原理!非常感謝你 ! – DCK 2013-03-02 09:53:51