mirror of
https://github.com/zebrajr/express.git
synced 2025-12-06 12:19:51 +01:00
60 lines
1.4 KiB
JavaScript
60 lines
1.4 KiB
JavaScript
|
|
// Expose modules in ./support for demo purposes
|
|
require.paths.unshift(__dirname + '/../../support');
|
|
|
|
/**
|
|
* Module dependencies.
|
|
*/
|
|
|
|
var express = require('../../lib/express');
|
|
|
|
// Path to our public directory
|
|
|
|
var pub = __dirname + '/public';
|
|
|
|
// Auto-compile sass to css with "compiler"
|
|
// and then serve with connect's staticProvider
|
|
|
|
var app = express.createServer(
|
|
express.compiler({ src: pub, enable: ['sass'] })
|
|
, express.static(pub)
|
|
);
|
|
|
|
// Optional since express defaults to CWD/views
|
|
|
|
app.set('views', __dirname + '/views');
|
|
|
|
// Set our default template engine to "jade"
|
|
// which prevents the need for extensions
|
|
// (although you can still mix and match)
|
|
app.set('view engine', 'jade');
|
|
|
|
// Dummy users
|
|
var users = [
|
|
{ name: 'tj', email: 'tj@vision-media.ca' }
|
|
, { name: 'ciaran', email: 'ciaranj@gmail.com' }
|
|
, { name: 'aaron', email: 'aaron.heckmann+github@gmail.com' }
|
|
];
|
|
|
|
app.get('/', function(req, res){
|
|
res.render('users', { users: users });
|
|
});
|
|
|
|
app.get('/users', function(req, res){
|
|
// we can use res.partial() as if
|
|
// we were in a view, utilizing the same api
|
|
// to render a fragment
|
|
res.partial('users/user', users);
|
|
});
|
|
|
|
app.get('/users/list', function(req, res){
|
|
res.partial('users/list', { object: users });
|
|
});
|
|
|
|
app.get('/user/:id', function(req, res){
|
|
res.partial('users/user', users[req.params.id]);
|
|
});
|
|
|
|
app.listen(3000);
|
|
console.log('Express app started on port 3000');
|