我拼命地試圖讓Ember 1.x中的slugs工作。在Ember.js 1.x路由中使用slu 012
我的序列化方法似乎很好地工作。使用鏈接助手或transitionToRoute方法,我可以毫無問題地導航到我的路線。 但是,當我重新加載我的頁面時,我得到了一堆錯誤,因爲我的承諾解決了模型數組而不是單個模型。
如何findQuery的結果減少到一個模型?
,我發現了一箇舊版本Ember.js這裏有幫助的答案: Using a slug in an emberjs route 不幸的是,解決方案不工作了。 「one」沒有定義,所以我嘗試將我的代碼調整到當前版本。根據promise文檔,promise對象的then方法中的返回值應該傳遞給下一個處理程序。但是,我仍然得到一個數組和我的錯誤之後。
我的路線實現:
App.ManageRoute = Ember.Route.extend
model: (params) ->
promise = @get('store').findQuery('company', {slug: params.company_id})
promise.then (models) ->
return models.get("firstObject")
return promise;
serialize: (model, params) ->
return {company_id: model.get('slug')}
[更新]
的解決方案是創建並返回一個新的承諾對象爲單一的模式。
你可以顯示你的路由器映射PLZ嗎? – mavilein