У меня есть ситуация, когда мой API может принимать объекты, где внутренние данные могут иметь всю информацию или только идентификатор. Теперь, если клиент отправляет объект A как пример
{
"description": "value",
"childA": {
"id": 123,
"otherA: {
"id": 321
}
},
"childB": {
"id": 123,
"otherBNew: {
"value": "some new text for new record"
}
}
Я хочу, чтобы мой API обнаруживал, установлен ли «id», чтобы игнорировать другие значения, кроме child, и если для «child» задано не смотреть на значение или какие-либо другие поля. Проблема с контекстом. Обновление заключается в том, что он пытается вставить дочерние данные со всеми значениями (нулевыми и значениями по умолчанию) для не введенных полей. Кроме того, у потомка есть «тип», который является enum и обязательным, но я хочу, чтобы он игнорировался, если установлен идентификатор.
Все дочерние элементы имеют одинаковое время, и то же самое относится и к внутренним дочерним элементам. Структура проста, как так
{ id: 123, value: "text", childTag: {id: 4, value: "child", childTag: null} }
Есть ли способ сделать это? Или мне нужно каждый раз получать данные из БД и обновлять только измененные поля?