Обновление встроенных моделей в Loopback 4 - PullRequest
0 голосов
/ 09 ноября 2018

В моем приложении 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"
    }]
}]

Не удалось найти никакой полезной информации по этому вопросу. Любые указатели, пожалуйста?

Заранее спасибо.

...