我在 Node.js 中创建了一个带有 Rethinkdb 数据库的应用程序,我从该应用程序加载图像,但是从数据资源管理器(您可以从 localhost:8080 连接到该数据资源管理器)加载图像,我无法删除加载的元素。
// This is how I show the elements that the table has Data Explorer
r.db("xxxxxxxxxx").table('images')
// And this is, or that shows
{
"createdAt": Sun Jul 29 2018 16:19:27 GMT+00:00 ,
"id": "17aac165-e885-4278-9cf2-8a71bca65fe3" ,
"publicId": "0IERfW4T5wfcjhFjGNftZh" ,
"src": https:xxxxxxxxxxxxxxxxxxxxxxxx1532881165551.jpg, »
"tags": [ ],
"user": {
"avatar": "www.gravatar.com/avatar/c17a64a79d5bb880c9b002458240fa92" ,
"name": "" ,
"username": "pedrito"
},
"userId": "pedrito"
}
对于更多内容,我查看了 Rethinkdb 的 javascript 文档:( https://www.rethinkdb.com/api/javascript/ )
我找不到一种方法可以将图像的元素从表中一一删除。它就在那里,但我找不到路。我能看到的最多的是如何从另一个表中删除用户:r.db(“xxxxxxxx”)。表(“用户”)。过滤器(r.row['用户名'] = 'pedrito')。删除 ()。运行
我无法用同样的方式删除图像。我想从 Data Explorer、Rethinkdb 的图形部分执行此操作。谢谢。
最佳答案
这个问题有点不清楚,如果你的意思是删除整个文档:
r.db("数据库").table("表").get("document_id").delete()
database、table 和 document_id 是占位符
数据库:您尝试删除的表所在的数据库
表格:要删除的文档所在的表格
document_id:要删除的文档的主键(默认id
)
所以在这个
{
“创建时间”:2018 年 7 月 29 日星期日 16:19:27 GMT+00:00 ,
“id”:“17aac165-e885-4278-9cf2-8a71bca65fe3”,
“publicId”:“0IERfW4T5wfcjhFjGNftZh”,
“src”:https:xxxxxxxxxxxxxxxxxxxxxxxx1532881165551.jpg,»
“标签”:[],
“用户”:{
“头像”:“www.gravatar.com/avatar/c17a64a79d5bb880c9b002458240fa92”,
“姓名”: ”” ,
“用户名”:“佩德里托”
} ,
“用户ID”:“佩德里托”
}
您的主键可能是 ID,因此您可以使用
r.db("xxx").table("images").get("17aac165-e885-4278-9cf2-8a71bca65fe3").delete()
https://rethinkdb.com/api/javascript/#delete
否则,如果您的意思是删除特定 key ,请检查另一个问题的答案 https://stackoverflow.com/a/18580552
编辑:删除全部
r.db('数据库').table('表').forEach((entry)=>{
return r.db('database').table('table').get(entry('id')).delete();
});
这将彻底删除表中的所有内容!
编辑:删除键=值的位置
r.db('数据库').table('表').filter({key:"value"}).forEach((entry)=>{
return r.db('database').table('table').get(entry('id')).delete();
});
这将删除表中key
:“value”的所有内容。
关于javascript - 如何从数据资源管理器中删除 Rethinkdb 中表的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51712115/