Как лучше всего обновить одно поле в документе на MongoDB? обновление или патч хук в пером
Я пытаюсь обновить документ mongodb в одном поле, у меня есть сомнения в том, какой метод я хочу использовать: патч или обновление, используя инфраструктуру перьев, приведите пример, как мы можем это сделать.
const { authenticate } = require('feathers-authentication').hooks;
module.exports = {
before: {
all: [ authenticate('jwt') ],
find: [],
get: [],
create: [],
update: [],
patch: [],
remove: []
},
after: {
all: [],
find: [],
get: [],
create: [],
update: [],
patch: [],
remove: []
},
error: {
all: [],
find: [],
get: [],
create: [],
update: [],
patch: [],
remove: []
}
};
1 ответ
Решение
update
заменит весь документ. Объединить с существующими данными patch
должен быть использован. Это задокументировано здесь и здесь на следующем примере:
app.service('messages').patch(1, {
text: 'A patched message'
}).then(message => console.log(message));
const params = {
query: { read: false }
};
// Mark all unread messages as read
app.service('messages').patch(null, {
read: true
}, params);