1
私は今これを試してみたいと思っています。私はExpressでルートを設定するためのベストプラクティスを決定しようとしています。私はファイルごとにセットアップした別々のルートを分けたいと思う。私はExpress Routerモジュールを使用しようとしていますが、動作させることはできません。明示的なルータ()でGET/POSTできません
<form name='create-users' action='/users' method='post' >
<h6>Create Account</h6>
<fieldset>
<label for='username'>User Name</label>
<input name='username' id='newname' type='text' placeholder='User Name'>
<label for='email'>Email</label>
<input name='email' id='email' type='text' placeholder='Email'>
<label for='newpassword'>Password</label>
<input name='password' id='newpassword' type='text' placeholder='Password'>
<button type='submit'>Create</button>
</fieldset>
</form>
I:ここ
var express = require('express');
var userRouter = express.Router();
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
var methodOverride = require('method-override');
userRouter.use(bodyParser.urlencoded({ extended: true }));
userRouter.use(methodOverride(function(req, res) {
if (req.body && typeof req.body === 'object' && '_method' in req.body) {
var method = req.body._method;
delete req.body._method;
return method;
}}));
/* GET users listing. */
userRouter.get('/users', function(req, res, next) {
console.log('users GET');
mongoose.model('User').find({}, function(err, users) {
if(err) {
console.error(err);
} else {
console.log(users);
res.render('users/index', { users: users });
}
});
})
.post(function(req, res, next) {
console.log(req);
});
module.exports = userRouter;
そして私が投稿しようとしている形です:ISユーザーのためのルートがある
var express = require('express');
var handlebars = require('express-handlebars');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
// Models
var db = require('./models/db.js');
var user = require('./models/user.js');
// Routes/Controllers
var routes = require('./routes/index.js');
var userRouter = require('./routes/users.js');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.engine('handlebars', handlebars({ defaultLayout: 'main' }));
app.set('view engine', 'handlebars');
// uncomment after placing your favicon in /public
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
// Routing Table
app.use('/', routes);
// User
app.use('/users', require('./routes/users'));
ここに:ここに私のメインのサーバーのファイルです私はファイルが適切に要求されていないことを知っていますが、これは単に私に404エラーを与えています。 2番目のファイルで