我正在致力於habit tracking app。我從一系列習慣開始。當用戶點擊一個習慣時,它會爲該習慣創建一個新事件。我有名單工作,但我在創建新事件方面遇到困難。如何從Ember控制器訪問查詢參數
要創建一個新的事件,我有這樣的路線:
App.Router.map(function() {
⋮
this.resource('new_event', { path: '/event/new/:habit_id' })
})
那麼相關的路由器是:
App.NewEventRoute = Ember.Route.extend({
model: function(params) {
return this.store.find('habit', params.habit_id)
},
setupController: function(controller, model) {
controller.set('selectedHabit', model)
}
})
據我所知,我可以訪問該查詢的唯一的地方參數在模型函數內。
的控制器,那麼,是:
App.NewEventController = Ember.ObjectController.extend({
init: function() {
console.log('init', this.get('selectedHabit'))
// Logic for adding a new event for the habit
this.transitionToRoute('events')
},
selectedHabit: null,
⋮
爲selectedHabit
返回的值是null
。
是params.habit_id返回你期待什麼? – bmeyers
是的。網址的末尾正確解析爲id。 – Will