fix: `null` value not persisted for JSON, Any, Object types

fixes #1895

Signed-off-by: Rifa Achrinza <25147899+achrinza@users.noreply.github.com>
This commit is contained in:
Elwood Johnson 2021-07-13 17:58:45 -04:00 committed by Rifa Achrinza
parent fc8bf0ac1e
commit 7b940a7d98
1 changed files with 5 additions and 3 deletions

View File

@ -179,10 +179,12 @@ DataAccessObject._forDB = function(data) {
const res = {};
for (const propName in data) {
const type = this.getPropertyType(propName);
if (type === 'JSON' || type === 'Any' || type === 'Object' || data[propName] instanceof Array) {
res[propName] = JSON.stringify(data[propName]);
const value = data[propName];
if (value !== null && (type === 'JSON' || type === 'Any' ||
type === 'Object' || value instanceof Array)) {
res[propName] = JSON.stringify(value);
} else {
res[propName] = data[propName];
res[propName] = value;
}
}
return res;