Skip to content

Instantly share code, notes, and snippets.

@MrChriZ
Created February 14, 2018 16:43
Show Gist options
  • Save MrChriZ/160d4f392cdceadc97212dab3b6cb269 to your computer and use it in GitHub Desktop.
Save MrChriZ/160d4f392cdceadc97212dab3b6cb269 to your computer and use it in GitHub Desktop.
import Route from '@ember/routing/route';
export default Route.extend({
model() {
return this.store.findMultiple(['tumblr-post-photo', 'tumblr-post-text']);
}
});
import DS from 'ember-data';
import { all } from 'rsvp';
import { A } from '@ember/array';
export default DS.Store.extend({
findMultiple: function (types) {
var self = this;
var recordsByType = types.map(function (type) {
return self.findAll(type);
});
return self.mergeArrayPromises(recordsByType);
},
mergeArrayPromises: function (promises) {
var promise = all(promises).then(function(arrays) {
var mergedArray = A();
arrays.forEach(function (records) {
mergedArray.pushObjects(records.toArray());
});
return mergedArray;
});
return DS.PromiseArray.create({
promise: promise,
});
},
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment