В моем приложении LoopBack 4 есть следующие модельные отношения:
Опрос имеет 1-много отношений с вопросом,
Вопрос имеет 1-многие отношения с Вариантом.
Я использую MongoDB в качестве базы данных. Я не могу понять, как реализовать API PUT / PATCH REST, который может обновлять всю модель опроса, содержащую Вопросы и опции. Я получаю следующее исключение, когда я пробую PATCH на примере запроса JSON ниже:
Исключение: необработанная ошибка в PATCH / 5be3e00aad0df83d10e580d1: 500
TypeError: Конструктор класса Вопрос не может быть вызван без 'new'
в Function.DataAccessObject._coerce (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ dao.js: 1799: 22)
в doUpdate (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ dao.js: 2735: 20)
в C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ dao.js: 2714: 11
at doNotify (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 155: 49)
at doNotify (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 155: 49)
в Function.ObserverMixin._notifyBaseObservers (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 178: 5)
в Function.ObserverMixin.notifyObserversOf (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 153: 8)
в Function.ObserverMixin._notifyBaseObservers (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 176: 15)
в Function.ObserverMixin.notifyObserversOf (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 153: 8)
в C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ dao.js: 2699: 11
at doNotify (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 155: 49)
at doNotify (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 155: 49)
в Function.ObserverMixin._notifyBaseObservers (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 178: 5)
в Function.ObserverMixin.notifyObserversOf (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 153: 8)
в Function.ObserverMixin._notifyBaseObservers (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 176: 15)
в Function.ObserverMixin.notifyObserversOf (C: \ Users \ nk \ Documents \ Project \ backend \ surveyService \ node_modules \ loopback-datasource-juggler \ lib \ наблюдатель.js: 153: 8)
Пример запроса PATCH:
[{
"title": "Some survey title 1",
"description": "Some survey title 1",
"questions": [{
"options": [{
"description": "Some option description 1",
"type": "Option"
}],
"description": "Some question description 1"
}]
}]
Не удалось найти никакой полезной информации по этому вопросу. Любые указатели, пожалуйста?
Заранее спасибо.