Почему после апгрейда feathersjs я получаю сообщение об ошибке: MethodNotAllowed - PullRequest
0 голосов
/ 02 января 2019

Я обновил свою версию feathersjs с 2.xx до 3.9.0 Теперь у меня проблема с крючками (после)

это мой запрос:

app.service('duties').patch(id, { $set: { status: 0 }}, {});

У меня есть код нижев моем хуке после:

var query = { "duties._id": result._id }

hook.app.service('parents').patch(null, { $set: { "duties.$.status": 0 } }, { query });

В предыдущей версии это работало нормально, теперь я получаю сообщение об ошибке в консоли:

error: MethodNotAllowed: Can not patch multiple entries

Как мне решить мою проблему?

1 Ответ

0 голосов
/ 03 января 2019

Для повышения безопасности из коробки создание, удаление и изменение нескольких записей по умолчанию отключено и должно быть включено с помощью параметра multi (и защищено явно). Инструкции по миграции можно найти по адресу crow.docs.feathersjs.com / migrating.html # database-adapters :

const service = require('feathers-<database>');

// Allow multi create, patch and remove
service({
  multi: true
});

// Only allow create with an array
service({
  multi: [ 'create' ]
});

// Only allow multi patch and remove (with `id` set to `null`)
service({
  multi: [ 'patch', 'remove' ]
});

Имейте в виду, что при разрешении нескольких запросов remove или patch разрешенный запрос должен быть ограничен (например, на основе идентифицированного идентификатора пользователя), в противном случае можно было бы удалить или исправить каждую запись в базе данных.

...