Skip to content

Instantly share code, notes, and snippets.

@spicalous
Created April 5, 2020 00:00
Show Gist options
  • Save spicalous/606d2d798a8a9b463faf4ac0ef7df444 to your computer and use it in GitHub Desktop.
Save spicalous/606d2d798a8a9b463faf4ac0ef7df444 to your computer and use it in GitHub Desktop.
New Twiddle
import Controller from '@ember/controller';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
}
export default function() {
this.get('/orders', function(schema) {
return schema.orders.all();
});
};
export default [
{
id: 1,
name: 'name 1',
price: 11
},
{
id: 2,
name: 'name 2',
price: 22
},
{
id: 3,
name: 'name 3',
price: 33
},
{
id: 4,
name: 'name 4',
price: 44
}
];
export default [
{
id: 1,
menuItemId: 1,
quantity: 1
},
{
id: 2,
menuItemId: 2,
quantity: 1
},
{
id: 3,
menuItemId: 3,
quantity: 1
}
];
export default [
{
id: 1,
orderItemIds: [1, 2]
},
{
id: 2,
orderItemIds:[3, 4]
}
];
export default function(server) {
server.loadFixtures();
}
import { JSONAPISerializer } from 'ember-cli-mirage';
export default JSONAPISerializer.extend({
});
import Model from 'ember-data/model';
import attr from 'ember-data/attr';
import { hasMany } from 'ember-data/relationships';
export default class extends Model {
@attr('string') name;
@attr('number') price;
@hasMany('order-item') orderItems;
}
import Model from 'ember-data/model';
import attr from 'ember-data/attr';
import { belongsTo } from 'ember-data/relationships';
export default class extends Model {
@attr('number') quantity;
@belongsTo('menu-item') menuItem
}
import Model from 'ember-data/model';
import { hasMany } from 'ember-data/relationships';
export default class OrderModel extends Model {
@hasMany('order-item') orderItems;
}
import Route from '@ember/routing/route';
export default Route.extend({
model() {
return this.store.findAll('order', { include: 'orderItems,orderItems.menuItem' });
}
});
<h1>Welcome to {{this.appName}}</h1>
<br>
<br>
{{outlet}}
<br>
<br>
{
"version": "0.17.0",
"EmberENV": {
"FEATURES": {},
"_TEMPLATE_ONLY_GLIMMER_COMPONENTS": false,
"_APPLICATION_TEMPLATE_WRAPPER": true,
"_JQUERY_INTEGRATION": true
},
"options": {
"use_pods": false,
"enable-testing": false
},
"dependencies": {
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js",
"ember": "3.17.0",
"ember-template-compiler": "3.17.0",
"ember-testing": "3.17.0",
"ember-cli-mirage": "1.1.6"
},
"addons": {
"@glimmer/component": "1.0.0",
"ember-data": "3.17.0",
"ember-cli-mirage": "1.1.6"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment