我的Couchbase中有这样的数据:
{
“mappings”: {
“/”: “Ana sayfa”
},
“platform”: “WEB”
}
我想这样转换所有数据:
{
“/”: {“viewLabel”:“Ana Sayfa”}
“platform”: “WEB”
}
所以我想分享旧版本:
{
“_class”: “com.commencis.appconnect.adminpanel.data.entity.ScreenNamesMappingEntity”,
“id”: “whitelabel::WEB::screenNamesMapping”,
“mappings”: {
“/”: “Ana sayfa”,
}
}
我要创建具有上述ID的新文档:
( “id”: “whitelabel::WEB::screenNamesMapping”)
并删除旧的。
我要这样创建和转换:
{
“_class”: “com.commencis.appconnect.adminpanel.data.entity.ScreenNamesMappingEntity”,
“id”: “whitelabel::WEB::screenNamesMapping”,
“mappings”: {
“/”: { “viewLabel”: “Ana sayfa” } ,
}
我需要编写脚本。我想创建一个具有相关ID的新文档,然后删除旧文档,它可能是N1QL倍数
我不应该更新旧数据,新数据应该具有新密钥,并且应该用旧密钥编辑新密钥并删除旧密钥。我需要这样做。
答案 0 :(得分:2)
您可以通过覆盖当前文档来使用相同的文档ID,但是两个实体都应该有两个存储库。
oldRepository.findById("myid").ifPresent(e -> {
NewEntity ne = new NewEntity(e.id(), e.platform()...);
newRepository.save(ne); });