Support string id in /resources/:id

This commit is contained in:
Typicode
2015-04-12 23:55:21 +02:00
parent ded9ffb0d7
commit a4fa344f10
2 changed files with 11 additions and 3 deletions

View File

@ -132,7 +132,7 @@ module.exports = function(source) {
// GET /:resource/:id
function show(req, res, next) {
var resource = db(req.params.resource)
.get(+req.params.id)
.get(utils.toNative(req.params.id))
if (resource) {
res.jsonp(resource)
@ -161,7 +161,7 @@ module.exports = function(source) {
}
var resource = db(req.params.resource)
.update(+req.params.id, req.body)
.update(utils.toNative(req.params.id), req.body)
if (resource) {
res.jsonp(resource)
@ -172,7 +172,7 @@ module.exports = function(source) {
// DELETE /:resource/:id
function destroy(req, res, next) {
db(req.params.resource).remove(+req.params.id)
db(req.params.resource).remove(utils.toNative(req.params.id))
// Remove dependents documents
var removable = utils.getRemovable(db.object)

View File

@ -167,6 +167,14 @@ describe('Server', function() {
.expect(200, done)
})
it('should support string id, respond with json and corresponding resource', function(done) {
request(server)
.get('/refs/abcd-1234')
.expect('Content-Type', /json/)
.expect(db.refs[0])
.expect(200, done)
})
it('should respond with 404 if resource is not found', function(done) {
request(server)
.get('/posts/9001')