2014-02-07 72 views
1

我在我的IndexRoute中找到了以下RSVP哈希,它查找所有滑塊記錄(我需要使用哈希,因爲我需要在此頁面上加載2個模型)。我可以在索引模板中調用滑塊或this.sliders以成功將所有滑塊對象傳遞給視圖組件。在ember.js中通過屬性過濾多個模型路由

但是,我需要通過頁面屬性「index」過濾這些記錄。當我將FilterBy添加到IndexRoute時,不會返回任何記錄。

如何過濾這些記錄並在模板中使用生成的數組?

IndexRoute

App.IndexRoute = Ember.Route.extend({ 
    model: function() { 
     return Ember.RSVP.hash({ 
      sliders: this.store.findAll("slider"), # Adding .filterBy("page", "index") fails to load anything 
      products: this.store.findAll("products") 
     }); 
    } 
}); 

的index.html

<script type="text/x-handlebars" data-template-name="index"> 
    {{mainpage-slider sliders=sliders}} 
</script> 

回答

1

過濾器添加到控制器KingPin2k

App.IndexRoute = Ember.Route.extend({ 
    model: function() { 
    return Ember.RSVP.hash({ 
     sliders: this.store.find("slider"), # Adding .filterBy("page", "index") fails to load anything 
     products: this.store.find("products") 
    }); 
    } 
}); 

App.IndexController = Em.ObjectController.extend({ 
    filteredSlider: function(){ 
    return this.get('sliders').filterBy('page', 'index'); 
    }.property('[email protected]') 
}); 
+0

嗨剛剛得到這個工作的感謝!我只需將this.get(「slider」)更改爲this.get(「slider」)以反映Route哈希中的屬性。非常感謝。 – dodgerogers747

+0

哎呀,錯過了複數化,好抓 – Kingpin2k