Как решить проблему сохранения входных данных с помощью node.js и Express - PullRequest
0 голосов
/ 29 декабря 2018

Разработка базы данных Мангуста, и я хотел бы получить некоторую поддержку по проблеме, с которой я столкнулся.Я внимательно следил за учебником и не вижу, в чем дело.

Я установил «var bodyParser = require ('body-parser') в app.js, Я хотел бы сохранить данные, введенные в форму в представлении реестра. Итак, в файле users.js я объявил маршрутизаторы для представления реестра и маршрутизатор.сообщение.код ниже Когда я иду, чтобы проверить форму поля имени в представлении реестра.Я не вижу вход, прошедший через терминал. Я получаю эту ошибку ниже

404
NotFoundError: Not Found
at C:\Users\Sue\myCommunityFinal2Mongoose\app.js:78:8
at Layer.handle [as handle_request] 
(C:\Users\Sue\myCommunityFinal2Mongoose\node_modules\express
\lib\router\layer.js:95:5)

Users.js

router.get('/register', function(req, res, next) {
res.send('register');
});

router.post('/register', function(req, res, next) {
console.log(req.body.name);
});

app.js

var createError = require('http-errors');
var express = require('express');
var hbs = require('hbs');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var hbs = require('express-handlebars');
var bodyParser = require('body-parser')
var session = require('express-session');
var passport = require('passport');
var expressValidator = require('express-validator');
var LocalStrategy = require('passport-local').Strategy;
var flash = require('connect-flash');
var mongo = require('mongodb');
var mongoose = require('mongoose');


app.use(expressValidator({
errorFormatter: function (pram, msg, value) {
var namespace = pram.split('.')
, root = namespace.shift()
, formParam = root;

while (namespace.length) {
  fornmParam += '[' + namespace.shift()

}
return {
  param: formParam,
  msg: msg,
  value: value
};

}}));

Я пошел в файл app.js и заметил, что пропустил проверку сообщения, поэтому я включил код ниже

app.use(require('connect-flash') ());
app.use(function (req,res,next) {
res.locals.message= require('express-message')(req,res);
next();
});

Когда я запускаю код, я получаю модуль экспресс-сообщения об ошибкеотсутствует.Поэтому я npm устанавливаю «express-message», но получаю ошибку «code e404, экспресс-модуль не найден».

Не уверен, что делать дальше, Мой ожидаемый результат - возможностьвведите данные в поля без ошибок, поэтому я могу смоделировать эти данные в базе данных MongoDB.

1 Ответ

0 голосов
/ 30 декабря 2018

Кажется, что экспресс установлен неправильно на вашем компьютере.

    run `npm cache clean` and try again

Если это не работает, запустите npm install @types/express

...