Публикации - Node.js

Разработка express-приложения - Разработка приложения с помощью Express, sequelize и mysql2 - Регистрация пользователей

Регистрация пользователей - это добавление информации в базу данных.

Начнем с создания формы и файла register.jade:

extends layout

block content
  h1 Registration
  form(action='/user/register' method='post')
    .form-group
      label(for='email') Email address
      input#email.form-control(type='email' name='email')
    .form-group
      label(for='name') Name
      input#name.form-control(type='text' name='name')
    .form-group
      label(for='password') Password
      input#password.form-control(type='password' name='password')
    button.btn.btn-primary(type='submit') Submit

Для вывода формы и обработки данных формы создадим контроллер user.js

Контроллер должен быть подключен в файле app.js

var usersRouter = require('./routes/users');
И для него должен быть реализован маршрут
app.use('/user', usersRouter);

Теперь можно переходить к контроллеру и реализовывать необходимые экшны. Экшн вывода формы:

router.get('/register', function (req, res, next) {
    // res.send('respond with a resource');
    res.render('register')
});

Экшн обработки данных и добавления новых пользователей в базу:

router.post('/register', function (req, res, next) {
    const dataUser = {
        name: req.body.name,
        email: req.body.email,
        password: req.body.password
    }
    // res.send(req.body);
    User.findOne({where: {email: dataUser.email}}).then(data => {
            if (!data) {
            User.create(dataUser).then(data => {
                // res.send(data);
                res.redirect('/user/login/?email=' + data.email)
            })
            } else {
                res.redirect('/user/login/?email=' + data.email)
            }
        }
    )
});

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться