Я создаю веб-API с помощью mongoose.
Работа POST и GET, но я не знаю, как реализовать метод PUT в mongoose.
Вот что я создал:
board.js
const mongoose = require('mongoose');
const bcrypt = require('bcryptjs');
const config = require('../config/database');
const BoardSchema = mongoose.Schema({
_id: {
type: String
},
position: {
type: [String]
}
});
const Board = module.exports = mongoose.model('boards', BoardSchema);
module.exports.getBoardById = function (id, callback)
{
Board.findById(id, callback);
}
module.exports.addBoard = function (newBoard, callback)
{
newBoard.save(callback);
}
module.exports.updateBoard = function (newBoard, callback)
{
newBoard.save(callback);
}
users.js
router.put('/board/:id', (req, res, next) =>
{
let newBoard = new Board({
_id: req.params.id,
position: req.body.position
});
Board.updateBoard(newBoard, (err, board) =>
{
if (err)
{
res.json({ newBoard: newBoard, success: false, msg: "Failed to update board" });
}
else
{
res.json({ newBoard: newBoard, success: true, msg: "Board added" });
}
});
});;
Здесь, в board.js,Я создал методы для добавления новой доски и обновления на существующую доску..addBoard работает правильно, и я могу проверить его с помощью Почтальона.Но .updateBoard добавляет данные, когда данные не существуют, но не обновляет никакие данные и возвращает false в качестве ответа (так же, как это делает POST).Есть ли способ заставить метод PUT работать?
Спасибо!