2014-05-09 3 views
2

DS.RESTAdapter의 Ember Data (1.0.0-beta.7)와 스페인어 API를 사용하고 있습니다. 나는 스페인 복수형을 처리하기 위해 일부 인플 규칙을 정의엠버 굴절 장치와 두 단어로 된 스페인어 복수화

App.Perfil = DS.Model.extend({ 
    nombre: DS.attr(), 
    tipo: DS.attr(), 
    modulosPerfiles: DS.hasMany('moduloPerfil', { async: true }) 
}); 

App.Modulo = DS.Model.extend({ 
    nombre: DS.attr(), 
    alias: DS.attr(), 
    tipo: DS.attr(), 
    modulosPerfiles: DS.hasMany('moduloPerfil', { async: true }) 
}); 

App.ModuloPerfil = DS.Model.extend({ 
    enabled: DS.attr(), 
    perfil: DS.belongsTo('perfil', { async: true }), 
    modulo: DS.belongsTo('modulo', { async: true }) 
}); 

: 나는 많은 관계로 많은 원을 나타내는 모델 호출 App.ModuloPerfil

Ember.Inflector.inflector.irregular('perfil', 'perfiles'); 
Ember.Inflector.inflector.irregular('moduloPerfil', 'modulosPerfiles'); 

내가 API 요청을 할 경우 : /api/perfil/1 나는 다음과 같은 응답 얻을 :

{"perfil": {id: 1, nombre: "Perfil investigador", tipo: "Investigador", modulosPerfiles: [1,2]}} 

지금까지 모두 괜찮아 보이지만을 나는 클라이언트에서 API로 만들어 호출을 확인할 때의 이 검색 할 때 moduloPerfil 요소 드 URL이 있다고 EE :

GET /api/moduloPerfils?ids[]=1&ids[]=2 

그것은 인플에 정의 된 "moduloPerfils"영어 복수가 아니라 불규칙한 규칙을 사용합니다.

Ember.Inflector.inflector.irregular('modulo-perfil', 'modulos-perfiles')으로 시도했지만 작동하지 않습니다.

불규칙 규칙을 정의해야하는 방법은 무엇입니까?

답변

1

더 많은 테스트를 한 후에 오류를 발견했습니다. ,

Ember.Inflector.inflector.irregular('perfil', 'perfiles'); 
Ember.Inflector.inflector.irregular('moduloPerfil', 'modulosPerfiles'); 

var App = Ember.Application.create(); 

죄송합니다 :

var App = Ember.Application.create(); 

Ember.Inflector.inflector.irregular('perfil', 'perfiles'); 
Ember.Inflector.inflector.irregular('moduloPerfil', 'modulosPerfiles'); 

을 그리고 올바른 순서는 다음과 같습니다 그것은 규칙의 문제가 아니에요, 문제는 Ember.Inflector 규칙 내가 뭘하고 있었Ember.Application.create

전에 선언해야했다 어리석은 실수 야.

고정 : 마지막으로 이것은 오류가 아니며 올바른 코드입니다. 규칙은 앱 생성 전이나 후에 선언 할 수 있습니다. 원래 코드는 오류없이 작동하므로 내가 보지 못한 것이 문제 일 수 있습니다.

+1

지금 당신에게 도움이 되었기 때문에 기쁩니다. 그러나 사실인지, 어떤 버전의 Ember를 사용하고 있는지 확실하지 않습니다. 나는 성명서와 반대되는 모범이 있기 때문에 호기심을 묻습니다. http://emberjs.jsbin.com/OxIDiVU/463/edit – Kingpin2k

+0

Ember 1.5.1과 Ember Data 1.0.0-beta.7을 사용하고 있습니다. 그것은 이상합니다. 당신 말이 맞습니다. 내 코드를 다시 수정했는데 이제는 앱 작성 후 선언문과 함께 작동합니다. 어쩌면 또 다른 문제가 있었는데 알지 못하고 해결했습니다. – franipfp

+0

답변을 삭제해야합니까? – franipfp