express-resource
Advanced tools
Comparing version 0.2.1 to 0.2.2
@@ -39,6 +39,16 @@ | ||
} | ||
login: function(req, res){ | ||
res.send('logged in ' + req.params.user); | ||
} | ||
logout: function(req, res){ | ||
res.send('logged out'); | ||
} | ||
}; | ||
app.resource('users', user); | ||
var userResource = app.resource('users', user); | ||
userResource.map('get', 'login', user.login); // relative path accesses element (/users/1/login) | ||
userResource.map('get', '/logout', user.logout); // absolute path accesses collection (/users/logout) | ||
app.listen(3000); |
0.2.2 / 2011-09-08 | ||
================== | ||
* Added support to allow root resources to have nested resources | ||
* Added auto-load signature support of `(req, id, callback)` | ||
0.2.1 / 2011-05-25 | ||
@@ -3,0 +9,0 @@ ================== |
16
index.js
@@ -61,3 +61,3 @@ | ||
this.app.param(this.id, function(req, res, next){ | ||
fn(req.params[id], function(err, obj){ | ||
function callback(err, obj){ | ||
if (err) return next(err); | ||
@@ -69,3 +69,10 @@ // TODO: ideally we should next() passed the | ||
next(); | ||
}); | ||
}; | ||
// Maintain backward compatibility | ||
if (2 == fn.length) { | ||
fn(req.params[id], callback); | ||
} else { | ||
fn(req, req.params[id], callback); | ||
} | ||
}); | ||
@@ -126,3 +133,3 @@ | ||
this.app[method](route, function(req, res, next){ | ||
req.format = req.params.format || self.format; | ||
req.format = req.params.format || req.format || self.format; | ||
if (req.format) res.contentType(req.format); | ||
@@ -160,3 +167,4 @@ if ('object' == typeof fn) { | ||
// relative base | ||
resource.base = this.base + this.name + '/' + this.param + '/'; | ||
resource.base = this.base + (this.name ? this.name + '/': '') + | ||
this.param + '/'; | ||
@@ -163,0 +171,0 @@ // re-define previous actions |
{ "name": "express-resource" | ||
, "description": "Resourceful routing for express" | ||
, "version": "0.2.1" | ||
, "version": "0.2.2" | ||
, "author": "TJ Holowaychuk <tj@vision-media.ca>" | ||
@@ -5,0 +5,0 @@ , "contributors": [ |
@@ -102,3 +102,3 @@ # Express Resource | ||
var forums = app.resource('forums', require('resources/forums'), { load: Forum.get }); | ||
var threads = app.resources('threads', require('resources/threads'), { load: Thread.get }); | ||
var threads = app.resource('threads', require('resources/threads'), { load: Thread.get }); | ||
@@ -105,0 +105,0 @@ forums.add(threads); |
33789
22
855