干杯! 我有路线:
TravelClient.Router.map(function() {
this.resource('tours', function() {
this.resource('tour', { path: ':tour_id' }, function(){
this.route('seats');
});
});
});
还有一个模板:
<script type="text/x-handlebars" data-template-name="tour/seats">
{{...}}
</script>
Seats 是 Tour 对象的一个属性:
TravelClient.Tour.find(1).get('seats');
12
我像这样扩展我的 TourSeats 路线:
TravelClient.TourSeatsRoute = Ember.Route.extend({
model: function(params) {
return TravelClient.Tour.find(params.tour_id).get('seats');
}
});
问题:如何在模板中渲染游览的座位?
更新:
我的装置看起来像这样:
TravelClient.Store = DS.Store.extend({
revision: 11,
adapter: 'DS.FixtureAdapter'
});
TravelClient.Tour = DS.Model.extend({
title: DS.attr('string'),
description: DS.attr('string'),
seats: DS.attr('number')
});
TravelClient.Tour.FIXTURES = [{
id: 1,
title: "Brighton, England",
description: "Lorem ipsum dolor ... .",
seats: 12
},...
我已经改变了我的路线延伸到这个:
TravelClient.TourSeatsRoute = Ember.Route.extend({
model: function(params) {
return TravelClient.Tour.find(params.tour_id);
}
});
在模板中:
<script type="text/x-handlebars" data-template-name="tour/seats">
{{tour.seats}}
</script>
更新 2:
<script type="text/x-handlebars" data-template-name="tour/seats">
{{controller.model.seats}}
</script>
它给了未定义的回报。经过一些调试,我发现 params 中没有任何 id 并且 params 为空,这就是为什么我无法在 TourSeatsRoute 函数中获得正确的模型。