Skip to content
Snippets Groups Projects
Commit a2d583d9 authored by Eugen Ciur's avatar Eugen Ciur
Browse files

add document model

parent bd2c3a8d
No related branches found
No related tags found
No related merge requests found
import JSONAPIAdapter from '@ember-data/adapter/json-api';
export default class ApplicationAdapter extends JSONAPIAdapter {
namespace = 'api';
buildURL(...args) {
return `${super.buildURL(...args)}.json`;
}
}
\ No newline at end of file
import Model, { attr } from '@ember-data/model';
export default class DocumentModel extends Model {
@attr title;
@attr image;
}
\ No newline at end of file
import Route from '@ember/routing/route'; import Route from '@ember/routing/route';
import { inject as service } from '@ember/service';
export default class RentalRoute extends Route { export default class RentalRoute extends Route {
async model(params) {
let response = await fetch(`/api/document/${params.document_id}.json`);
let { data } = await response.json();
let { attributes } = data; @service store;
let type = 'document';
return { type, ...attributes }; async model(params) {
return this.store.findRecord('document', params.document_id);
} }
} }
import Route from '@ember/routing/route'; import Route from '@ember/routing/route';
import { inject as service } from '@ember/service';
export default class IndexRoute extends Route { export default class IndexRoute extends Route {
async model() {
let response = await fetch('/api/nodes.json');
let { data } = await response.json();
return data.map((model) => { @service store;
let { attributes } = model;
let type = 'document';
return { type, ...attributes }; async model() {
}); return this.store.findAll('document');
} }
} }
import JSONAPISerializer from '@ember-data/serializer/json-api';
export default class ApplicationSerializer extends JSONAPISerializer {
}
\ No newline at end of file
{ {
"data": { "data": {
"type": "document", "type": "document",
"attributes": {
"id": 1, "id": 1,
"attributes": {
"title": "Invoice 1.pdf", "title": "Invoice 1.pdf",
"image": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Crane_estate_(5).jpg" "image": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Crane_estate_(5).jpg"
} }
......
...@@ -2,16 +2,16 @@ ...@@ -2,16 +2,16 @@
"data": [ "data": [
{ {
"type": "document", "type": "document",
"attributes": {
"id": 1, "id": 1,
"attributes": {
"title": "Invoice 1.pdf", "title": "Invoice 1.pdf",
"image": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Crane_estate_(5).jpg" "image": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Crane_estate_(5).jpg"
} }
}, },
{ {
"type": "document", "type": "document",
"attributes": {
"id": 2, "id": 2,
"attributes": {
"title": "Invoice 2.pdf", "title": "Invoice 2.pdf",
"image": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Crane_estate_(5).jpg" "image": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Crane_estate_(5).jpg"
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment