我在遗留的Wakanda数据存储中获得了很多值,我需要将其更新为一些新的值。wakanda数据浏览器页面中是否有类似卷曲的命令,可用于在表中进行大量查找和替换?
发布于 2016-03-23 09:42:22
如果您的数据集名为MyDataClass,并且要更新的属性是myAttribute,则可以使用以下服务器端脚本:
var newValue = "new value";
ds.MyDataClass.all().forEach(function(entity){
entity.myAttribute = newValue;
entity.save();
});如果要提交或回滚整个操作,也可以使用事务。
发布于 2016-03-22 09:51:44
我不认为有办法在dataBrowser中进行大量的查找/替换,但是我建议您在服务器端使用一个查询,用需要替换的值搜索记录,然后在这个集合上循环设置新值。
发布于 2016-03-23 23:14:35
正如在其他答案中提到的,您可能最好在集合上循环。在Wakanda中没有像您在许多其他数据库中看到的大规模替换的概念。
var myCollection = ds.DataClassName.query("attributeName == :1", "valueToFind");
myCollection.forEach(function(e){
e.attributeName = "newValue";
e.save();
});因此,假的"person“数据类型可能如下所示:
var blankFirsts = ds.Person.query("firstname == :1", "");
blankFirsts.forEach(function(person){
person.firstname = "no name";
person.save();
});https://stackoverflow.com/questions/36144251
复制相似问题