DS#inject
DS#inject(resourceName, attrs[, options])
Inject the given item into the data store for the specified resource. If attrs
is an array, inject each item into the data store. Injecting an item into the data store does not save it to the server. Calls the beforeInject
and afterInject
hooks. Emits the DS.beforeInject
and DS.afterInject
events. Any item you inject must have a primary key.
Returns the inject item(s).
You can call
DS#inject
multiple ways
DS#inject(resourceName, attrs[, options])
Resource#inject(attrs[, options])
- Where Resource was created byDS#defineResource
Argument | Type | Description |
---|---|---|
resourceName | string | The name of the resource to use. Unnecessary if calling inject directly on a Resource. |
attrs | object or array of objects | Item or items to inject. Any item you inject must have a primary key. |
options (optional) | object | Settings are inherited from Resource and Global defaults. |
options.onConflict | string | What to do when injecting an item and an item with the same primary key already exists in the store. Default is merge . The other option is replace . |
options.notify | boolean | Whether to emit the DS.beforeInject and DS.afterInject events. Default true . |
Examples
Document.get(45); // undefined
Document.inject({ title: 'How to Cook', id: 45 });
Document.get(45); // { title: 'How to Cook', id: 45 }
Inject a collection into the data store:
Document.filter(); // [ ]
// See Method Variants section below for different ways to call DS#inject
Document.inject([ { title: 'How to Cook', id: 45 }, { title: 'How to Eat', id: 46 } ]);
Document.filter(); // [ { title: 'How to Cook', id: 45 }, { title: 'How to Eat', id: 46 } ]
Need help?
Want more examples or have a question? Ask on the Slack channel or post on the mailing list then we'll get your question answered and probably update this wiki.
Updated less than a minute ago