@@ -2,17 +2,11 @@ var express = require('express')
2
2
var methodOverride = require ( 'method-override' )
3
3
var bodyParser = require ( 'body-parser' )
4
4
var _ = require ( 'lodash' )
5
+ var _db = require ( 'underscore-db' )
5
6
var low = require ( 'lowdb' )
6
7
var pluralize = require ( 'pluralize' )
7
8
var utils = require ( './utils' )
8
9
9
- // Add underscore-db methods to lowdb
10
- low . mixin ( require ( 'underscore-db' ) )
11
-
12
- // Override underscore-db's createId with utils.createId
13
- // utils.createId can generate incremental id or uuid
14
- low . mixin ( { createId : utils . createId } )
15
-
16
10
module . exports = function ( source ) {
17
11
// Create router
18
12
var router = express . Router ( )
@@ -31,6 +25,13 @@ module.exports = function (source) {
31
25
db = low ( source )
32
26
}
33
27
28
+ // Add underscore-db methods to db
29
+ db . mixin ( _db )
30
+
31
+ // Override underscore-db's createId with utils.createId
32
+ // utils.createId can generate incremental id or uuid
33
+ db . mixin ( { createId : utils . createId } )
34
+
34
35
// Expose database
35
36
router . db = db
36
37
@@ -147,7 +148,7 @@ module.exports = function (source) {
147
148
var _embed = req . query . _embed
148
149
var id = utils . toNative ( req . params . id )
149
150
var resource = db ( req . params . resource )
150
- . get ( id )
151
+ . getById ( id )
151
152
152
153
if ( resource ) {
153
154
// Clone resource to avoid making changes to the underlying object
@@ -196,7 +197,7 @@ module.exports = function (source) {
196
197
}
197
198
198
199
var resource = db ( req . params . resource )
199
- . update ( utils . toNative ( req . params . id ) , req . body )
200
+ . updateById ( utils . toNative ( req . params . id ) , req . body )
200
201
201
202
if ( resource ) {
202
203
res . jsonp ( resource )
@@ -207,13 +208,13 @@ module.exports = function (source) {
207
208
208
209
// DELETE /:resource/:id
209
210
function destroy ( req , res , next ) {
210
- db ( req . params . resource ) . remove ( utils . toNative ( req . params . id ) )
211
+ db ( req . params . resource ) . removeById ( utils . toNative ( req . params . id ) )
211
212
212
213
// Remove dependents documents
213
214
var removable = utils . getRemovable ( db . object )
214
215
215
216
_ . each ( removable , function ( item ) {
216
- db ( item . name ) . remove ( item . id )
217
+ db ( item . name ) . removeById ( item . id )
217
218
} )
218
219
219
220
res . status ( 200 ) . jsonp ( { } )
0 commit comments