Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save paridin/cfc0b5fb513642d72fc11358cac3c8e5 to your computer and use it in GitHub Desktop.
Save paridin/cfc0b5fb513642d72fc11358cac3c8e5 to your computer and use it in GitHub Desktop.
HABTM
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember HABTM'
});
import DS from 'ember-data';
export default DS.Model.extend({
selections: DS.hasMany('selection'),
});
import DS from 'ember-data';
export default DS.Model.extend({
body: DS.attr('string'),
selections: DS.hasMany('selection')
});
import DS from 'ember-data';
export default DS.Model.extend({
adventure: DS.belongsTo('adventure'),
path: DS.belongsTo('path')
});
import Ember from 'ember';
export default Ember.Route.extend({
model: function() {
let path = this.store.createRecord('path', {
body: "Hello World"
});
let selection = this.store.createRecord('selection', { path });
let adventure = this.store.createRecord('adventure', { selection });
return Ember.RSVP.hash({
paths: this.store.findAll('path'),
selections: this.store.findAll('selection'),
adventures: this.store.findAll('adventure')
})
}
});
{{appName}}
<br>
{{#each model.paths as |path|}}
{{path.body}}
{{/each}}
{
"version": "0.7.2",
"EmberENV": {
"FEATURES": {}
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.js",
"ember": "https://cdnjs.cloudflare.com/ajax/libs/ember.js/2.4.4/ember.debug.js",
"ember-data": "https://cdnjs.cloudflare.com/ajax/libs/ember-data.js/2.4.3/ember-data.js",
"ember-template-compiler": "https://cdnjs.cloudflare.com/ajax/libs/ember.js/2.4.4/ember-template-compiler.js"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment