我正在尝试创建一个变形器规则,指定标准的单数是标准。在javascript控制台中,我可以这样工作:
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'
当使用带有正则表达式的inflector规则时,我收到错误Uncaught TypeError: undefined is not a function
。
此外,在使用Google搜索Ember inflectors的位置后,我无法找到答案,甚至在EmberJS
指南中也找不到答案。我尝试在ApplicationAdapter
之前和之后放置它们无效。
我做错了什么?我应该把它们放在哪里?谢谢你的帮助!
答案 0 :(得分:2)
在我提出这个问题之后,我立即找到了问题的答案:
Ember.Inflector.inflector.singular(/ia$/, 'ion')
这解决了这个问题。我在Ember.Application.create
声明之后把它放在了正确的位置。我不知道这是不是最合适的地方,但它确实有效。