2014-07-13 142 views
2

我試圖創建一個inflector規則,指定單數的標準標準。在JavaScript控制檯中,我能得到它像這樣工作:Ember.js inflectors - 他們去哪裏?

inflector = new Ember.Inflector(Ember.Inflector.defaultRules); 
inflector.singularize('criteria') // => "criterium" 
inflector.irregular('criterion', 'criteria') 
inflector.singularize('criteria') // => 'criterion' 

這是我用來嘗試創建一個變形器規則行:

Ember.Inflector.inflector.irregular('criterion', 'criteria') 

// using a regex 
Ember.Inflector.inflector.irregular(/ion$/, 'ia') 

不幸的是,我不斷收到錯誤在JS控制檯:

Error: No model was found for 'reviewCriterium' 

當使用正則表達式表達偏轉規則,我得到的錯誤Uncaught TypeError: undefined is not a function

此外,谷歌搜索Ember inflectors後,我找不到答案,甚至沒有從EmberJS指南。我試圖將它們放在ApplicationAdapter之前和之後都無濟於事。

我在做什麼錯?我應該在哪裏放置它們?感謝任何幫助傢伙!

回答

2

於是立即之後我問這個問題,我找到了答案,以我的問題:

Ember.Inflector.inflector.singular(/ia$/, 'ion') 

這解決了問題。我在Ember.Application.create聲明之後放置這個。我不知道這是否是放置它的最佳地點,但它是有效的。

+0

這對我工作,謝謝! :)如果其他人正在尋找這方面的信息,請查看此頁面:http://guides.emberjs.com/v1.12.0/models/the-rest-adapter/#toc_pluralization-customization – blong