1
我想過濾products
,具體取決於所選的category
,可以通過下拉菜單選擇它。 products
通過belongsTo category
控制器中的過濾器值
- 我有什麼在控制器改變取決於下拉菜單中選擇的值來過濾
products
? - 如何在下拉菜單中添加空白字段並在選擇時顯示所有產品?
這裏是當前灰燼CLI代碼:
應用程序/路由/ index.js
import Ember from 'ember';
export default Ember.Route.extend({
model: function() {
return {
categories: this.store.find('category'),
products: this.store.find('product')
};
}
});
應用程序/控制器/ index.js
import Ember from 'ember';
export default Ember.Controller.extend({
selectedCategory: null,
categories: function(){
var model = this.get('model.categories');
return model;
},
products: function(){
var model = this.get('model.products');
return model;
}.property('selectedCategory')
});
app /模板/ index.hbs
<p>
{{view "select"
content=model.categories
optionValuePath="content.id"
optionLabelPath="content.name"
value=selectedCategory
}}
</p>
{{#each product in products}}
<li>{{product.name}}</li>
{{/each}}
應用程序/模型/ product.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
category: DS.belongsTo('category', { async: true }),
});
應用程序/模型/ category.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
products: DS.hasMany('product', { async: true })
});