mirror of
https://github.com/typicode/json-server.git
synced 2025-07-28 20:52:08 +08:00
Fix pluralization
This commit is contained in:
@ -18,9 +18,9 @@
|
|||||||
"method-override": "^2.1.2",
|
"method-override": "^2.1.2",
|
||||||
"morgan": "^1.3.1",
|
"morgan": "^1.3.1",
|
||||||
"node-uuid": "^1.4.2",
|
"node-uuid": "^1.4.2",
|
||||||
|
"pluralize": "^1.1.2",
|
||||||
"underscore": "^1.5.2",
|
"underscore": "^1.5.2",
|
||||||
"underscore-db": "^0.8.0",
|
"underscore-db": "^0.8.0",
|
||||||
"underscore.inflections": "~0.2.1",
|
|
||||||
"update-notifier": "^0.2.2",
|
"update-notifier": "^0.2.2",
|
||||||
"yargs": "^1.3.1"
|
"yargs": "^1.3.1"
|
||||||
},
|
},
|
||||||
|
@ -3,11 +3,11 @@ var methodOverride = require('method-override')
|
|||||||
var bodyParser = require('body-parser')
|
var bodyParser = require('body-parser')
|
||||||
var _ = require('underscore')
|
var _ = require('underscore')
|
||||||
var low = require('lowdb')
|
var low = require('lowdb')
|
||||||
|
var pluralize = require('pluralize')
|
||||||
var utils = require('./utils')
|
var utils = require('./utils')
|
||||||
|
|
||||||
// Add methods to lowdb
|
// Add underscore-db methods to lowdb
|
||||||
low.mixin(require('underscore-db'))
|
low.mixin(require('underscore-db'))
|
||||||
low.mixin(require('underscore.inflections'))
|
|
||||||
|
|
||||||
// Override underscore-db's createId with utils.createId
|
// Override underscore-db's createId with utils.createId
|
||||||
// utils.createId can generate incremental id or uuid
|
// utils.createId can generate incremental id or uuid
|
||||||
@ -88,7 +88,8 @@ module.exports = function (source) {
|
|||||||
|
|
||||||
// Add :parentId filter in case URL is like /:parent/:parentId/:resource
|
// Add :parentId filter in case URL is like /:parent/:parentId/:resource
|
||||||
if (req.params.parent) {
|
if (req.params.parent) {
|
||||||
filters[req.params.parent.slice(0, -1) + 'Id'] = +req.params.parentId
|
var parent = pluralize.singular(req.params.parent)
|
||||||
|
filters[parent + 'Id'] = +req.params.parentId
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add query parameters filters
|
// Add query parameters filters
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
var _ = require('underscore')
|
var _ = require('underscore')
|
||||||
var uuid = require('node-uuid')
|
var uuid = require('node-uuid')
|
||||||
var _inflections = require('underscore.inflections')
|
var pluralize = require('pluralize')
|
||||||
_.mixin(_inflections)
|
|
||||||
|
|
||||||
// Turns string to native.
|
// Turns string to native.
|
||||||
// Example:
|
// Example:
|
||||||
@ -50,7 +49,7 @@ function getRemovable (db) {
|
|||||||
_(coll).each(function (doc) {
|
_(coll).each(function (doc) {
|
||||||
_(doc).each(function (value, key) {
|
_(doc).each(function (value, key) {
|
||||||
if (/Id$/.test(key)) {
|
if (/Id$/.test(key)) {
|
||||||
var refName = _.pluralize(key.slice(0, -2))
|
var refName = pluralize.plural(key.slice(0, -2))
|
||||||
// Test if table exists
|
// Test if table exists
|
||||||
if (db[refName]) {
|
if (db[refName]) {
|
||||||
// Test if references is defined in table
|
// Test if references is defined in table
|
||||||
|
Reference in New Issue
Block a user