gpt4 book ai didi

ember.js - store.find() 方法是否使用与 ember-inflector 不同的屈折规则?

转载 作者:行者123 更新时间:2023-12-04 18:08:43 25 4
gpt4 key购买 nike

我正在使用 Ember v1.0.0 和 Ember-Data v1.0.0-beta.3 构建一个简单的 Ember 应用程序。我有一个名为“类别”的模型

类别.咖啡:

App.Categoria = DS.Model.extend
nombre: DS.attr 'string'
simplified: DS.attr 'boolean'
candidatos: DS.hasMany 'candidato'

当我尝试通过 id 查找“类别”时,我总是收到错误消息:
断言失败:未找到“类别”的模型

category_route.coffee:
App.CategoriaRoute = Em.Route.extend(
model: (params)->
@store.find('categoria', params.categoria_id)
)

App.CategoriaIndexRoute = Em.Route.extend(
model: ->
categoria = @modelFor('categoria')
categoria.reload() if categoria.get('simplified')
categoria
)

由于西类牙语命名的模型,我已经指定了屈折规则。

商店.咖啡:
Ember.Inflector.inflector.irregular('categoria', 'categorias')
Ember.Inflector.inflector.rules.irregularInverse['categorias'] = 'categoria'
App.ApplicationAdapter = DS.ActiveModelAdapter()
App.ApplicationSerializer = DS.ActiveModelSerializer.extend()

我想知道是否 Store 的 find 方法使用了一组不同的屈折规则? 或者还有其他地方我应该声明这个模型的屈折规则吗?

值得一提的是,针对此模型向服务器发出的请求是正确发出的(到正确的 URL),并且它们的响应格式良好。

我尝试对 store.find 使用不同的语法 Ember Guides#Method Find中提到的方法( http://emberjs.com/api/data/classes/DS.Store.html#method_find ) 但错误是一样的。

最佳答案

问题是当它尝试对 json 响应进行单数化时,它会尝试将 categoria 单数化它返回 categorium ,你的多元化运作良好。

var iff = Ember.Inflector.inflector;

iff.irregular('categoria', 'categorias');
// this adds a test for when it finds categoria and you are trying to singularize, return categoria
iff.singular(/categoria/, 'categoria');

http://emberjs.jsbin.com/ICeGuzuX/3/edit

关于ember.js - store.find() 方法是否使用与 ember-inflector 不同的屈折规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20053734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com