With 3 child objects and 2 parent objects we needed to create 3 mixins and 2 objects (additional 5 objects) from which parent objects will inherit. And this is a fairly simple scenario; once things get more complex (and they always do in larger projects) this will be a nightmare to maintain.

So instead of creating 5 more additional objects and writing code that is hardly readable and a nightmare to maintain we could have relations defined on the models in a cleaner way.

Unfortunately I am not familiar with Ember-data internals and I am not sure about feasibility of this proposal. I will start digging into Ember-data slowly in attempt to learn more and to craft pull request one day. Meanwhile feedback (and help) is welcomed!

Mixins work but you have to concentrate them in a separate class from which you will inherit (take a look at the code I’ve posted).

Now regarding approach from presentation on Polymorphic Associations — as you’ve pointed out: we still need to create common class. Another problem is that relations are not readable from defined models (which is a mess to work with). Also, will traversing both ways work? I.e. will post.atricles return articles and will article.articleable return post? I think it won’t without additional bending and hacking.