1

我无法使用 mongolite 更新 mongo 中的布尔值。我在 r 中有一个布尔值(FALSE),我正在尝试更新 mongo 中当前值为 true(mongo bool)的字段。但是在使用 mongolite 进行更新命令后,mongo 中存储的布尔值 true 更改为字符串值 FALSE(R bool 类型)。

4

1 回答 1

0

mongolite 不会自动将布尔值更新rmongo布尔值。

Error: Invalid JSON object对我来说是一个:

m$update('{"name":"foo", "$set":{"boolean":FALSE}}')

这插入FALSE为字符串:

m$update('{"name":"foo", "$set":{"boolean":"FALSE"}}')

这将 false 作为布尔值插入:

m$update('{"name":"foo", "$set":{"boolean":false}}')

如果您以编程方式进行更新查询,您可以执行以下操作:

```

my_boolean <- FALSE
my_updateQuery <- paste0('{"$set":{"boolean":',tolower(paste0(my_boolean)),'}}')
m$update('{"name":"foo", my_updateQuery)

```

于 2018-10-23T15:32:37.440 回答