2013-03-06 106 views
0

我有一個currentUser控制器,大多數時間爲我工作。從對象訪問控制器

我將findAll()添加到Ember.Object以便從服務器獲取所有項目。我只想要得到的項目爲currentUser,和我莫名其妙地試圖納入currentUserController獲得用戶的id已登錄。

  1. 從模型不正確使用訪問控制?
  2. 如果不是,我應該怎麼去控制器?
App.Project = Ember.Object.reopenClass({ 
    findAll: function() { 
    allPosts = []; 
    $.ajax({ 
     url: '/projects.json', 
     type: 'GET', 
     data: {'user_id': App.currentUserController.id}, 
     success: function(data, textStatus, xhr){ 

     }, 
     error: function(xhr, textStatus, errorThrown) { 

     } 
    }); 
    } 
}); 

回答

0

是,傳統的觀點是,一個模型不應該訪問的控制器。

您的currentUserController是否有相應的路線和模板?我的意思是,如果不是,currentUserController只是作爲一個全局變量嗎?如果是這樣,您可能只想將currentUserController.id存儲在App.currentUserId並根據需要參考它。並不是每個人都喜歡全局變量,但這將是一個合理的地方。

0

請注意,這並不安全,因爲變量可以由用戶更改以訪問另一個帳戶。不是後臺有一個狀態能夠告訴當前使用ID是基於會話還是某個東西?我會說使用它,而不用費心將它添加到查詢中。