![](/img/trans.png)
[英]How do I get the total number of records before I run limit when using Aggregation
[英]How do I get the total number of records in a fixture from a controller?
我想從控制器中獲取固定裝置中的記錄總數。 這是我的燈具代碼:
固定裝置
App.Items.FIXTURES = [
{
id: 1
},
{
id: 2
},
{
id: 3,
}
];
在這種情況下,固定裝置中總共有3條記錄。 如何在我的控制器中獲得總計?
如果您使用的是這樣的東西:
App.ItemsRoute = Ember.Route.extend({
model: function() {
return this.store.find('items');
}
});
store.find
返回一個Ember.PromiseProxyMixin實例,因此您可以觀察isFulfilled
屬性來了解何時加載數據:
App.ItemsController = Ember.ArrayController.extend({
doSomethingWithTotal: function() {
var length = this.get('model.length');
// do something with de length
}.observes('model.isFulfilled')
});
您可以向ArrayController詢問屬性content
,它將返回一個數組,使您可以訪問length
。
這是更新的小提琴: http : //jsfiddle.net/bYSjD/
App.ItemsController = Ember.ArrayController.extend({
doSomethingWithTotal: function() {
return this.get('content.length')
}.property('content')
});
這種工作方式是App.ItemsRoute
。 model
返回一個Promise來查找項目,完成后, ItemsRoute
另一個方法稱為: setupController
。
Ember將自動為您處理setupController
,該控制器將使用返回的模型數據填充控制器。 將設置ItemsController
的content
屬性,為您的屬性doSomethingWithTotal
一個真實值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.