Our experience with Ember
labs.kollegorna.se
Our experience with Ember
1–10 of 11 posts
Re: Our experience with Ember
#2Re: Our experience with Ember
#3Re: Our experience with Ember
#4Re: Our experience with Ember
#5Another thing: Ember-Data doesn't support PATCH (last I looked) so it requires sending the whole model to save changes. This can have unintended consequences when you only want to update one thing, but have to send every thing.
Re: Our experience with Ember
#6Q1: When given some instance of DS.Model, how does DS.Store figure out what child-class of DS.Model it is?
Q2: Where and how do DS.Model child-classes get registered with the main ember application?
Q3: Say you have some model Person = DS.Model.extend(...) and some PersonAdapter = DS.ActiveModelAdapter.extend(...), when does Ember go about and register your PersonAdapter and figuring out it should be used with the Person model?
I'm trying to create something very like the DS.Adapter system for Ember, except instead of handling ajax requests for data persistence, it would do data live updates, but I'm confused at exactly how Ember goes about registering its parts.
Re: Our experience with Ember
#7While we're on the subject of Ember, can an ember guru please share some of your wisdom by explaining the following: Q1: When given some instance of DS.Model, how does DS.Store figure out what child-class of DS.Model it is? Q2: Where and how do DS.Model child-classes get registered with the main ember application? Q3: Say you have some model Person = DS.Model.extend(...) and some PersonAdapter = DS.ActiveModelAdapter…
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.
Re: Our experience with Ember
#8Another thing: Ember-Data doesn't support PATCH (last I looked) so it requires sending the whole model to save changes. This can have unintended consequences when you only want to update one thing, but have to send every thing.
Re: Our experience with Ember
#9While we're on the subject of Ember, can an ember guru please share some of your wisdom by explaining the following: Q1: When given some instance of DS.Model, how does DS.Store figure out what child-class of DS.Model it is? Q2: Where and how do DS.Model child-classes get registered with the main ember application? Q3: Say you have some model Person = DS.Model.extend(...) and some PersonAdapter = DS.ActiveModelAdapter…
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 res…