Hi, I will try to answer your questions:
It is all about the resolver who does this job for you.
Ember convention is to have adapter & serializer per model which comes abs brilliant when you go into later stage in your project.
If you intent to have model Person Ember would expect that you provide Person(Model) , PersonSerializer ,PersonAdapter where missing will use the application default ones. Default ones are resolved with App.ApplicationAdapter, App.ApplicationSerializer .
So if you do store.find('person', 1) Ember's default resolver would try App.Person then resolve the adapter App.PersonAdapter || App.ApplicationAdapter and App.PersonSerializer || App.ApplicationSerializer.
1) Store will use the resolver to identify the class
var attr = DS.attr;
App.Person = DS.Model.extend({
firstName: attr(),
lastName: attr(),
birthday: attr()
});
store.find('person', 1);// resolver will search in App.Person (classified name) namespace (ember-cli will do that a bit differently)
2) the application namespace where the resolver performs the lookup - check App.__container__ registry
3)That's how the resolver work it checked as stated above.
Hope this helps you.
It is all about the resolver who does this job for you.
Ember convention is to have adapter & serializer per model which comes abs brilliant when you go into later stage in your project. If you intent to have model Person Ember would expect that you provide Person(Model) , PersonSerializer ,PersonAdapter where missing will use the application default ones. Default ones are resolved with App.ApplicationAdapter, App.ApplicationSerializer .
So if you do store.find('person', 1) Ember's default resolver would try App.Person then resolve the adapter App.PersonAdapter || App.ApplicationAdapter and App.PersonSerializer || App.ApplicationSerializer.
1) Store will use the resolver to identify the class
var attr = DS.attr;
App.Person = DS.Model.extend({ firstName: attr(), lastName: attr(), birthday: attr() });
store.find('person', 1);// resolver will search in App.Person (classified name) namespace (ember-cli will do that a bit differently)
2) the application namespace where the resolver performs the lookup - check App.__container__ registry
3)That's how the resolver work it checked as stated above.
Hope this helps you.