2014-07-06 102 views

回答

6

我把它放在模型文件,它工作得很好:

import DS from 'ember-data'; 
import Ember from 'ember'; 

var inflector = Ember.Inflector.inflector; 
inflector.irregular('nota', 'notas'); 
inflector.singular(/nota/, 'nota'); 

export default DS.Model.extend({ 
    title: DS.attr('string'), 
    description: DS.attr('string'), 
    language: DS.attr('string'), 
    body: DS.attr('string') 
}); 
+1

有趣的是,謝謝 - 我會檢查出來......但是,這將如何工作?我們絕不會輸出Inflector? – jwahdatehagh

+0

它確實工作,謝謝... – jwahdatehagh

9

我產生一個初始化,並把這個數據在那裏。這可以確保它在可能需要它的任何事物之前加載。像模型,適配器或序列化程序一樣。

初始化/ inflector.js

import Ember from 'ember'; 
export function initialize(/* container, application */) { 
    var inflector = Ember.Inflector.inflector; 
    inflector.uncountable('aamc-pcrs'); 
} 

export default { 
    name: 'inflector', 
    initialize: initialize 
}; 
+0

這真的是要走的路。接受的答案(在模型中執行)不適用於側載的情況。 – blimmer

0

餘燼指南涵蓋了這Models - Customizing Adapters

創建文件app/models/custom-inflector-rules.js

import Inflector from 'ember-inflector'; 

const inflector = Inflector.inflector; 

inflector.irregular('formula', 'formulae'); 
inflector.uncountable('advice'); 

// Meet Ember Inspector's expectation of an export 
export default {}; 
app/app.js

然後添加一行:

import './models/custom-inflector-rules'; 

如果您想在串行器/適配器的單元測試中使用它,那麼您只需將custom-inflector-rules文件導入測試。