2014-11-21 51 views
0

我已初始化一个集合。在这我有一个持有UserPreferences的文档。我试图更新这个文档的几个字段。但与errorCallback失败。Worklight WL.JSONStore替换文档失败

var dataToUpdate = { 
           userPreferencesID:1, 
           firstname:'Test Name', 
           lastName: 'Test Name 2'}; 
WL.JSONStore.get(tableName).replace(dataToUpdate).then(successCallback).fail(errorCallback); 

如果一些论坛上,我可以看到语法

WL.JSONStore.get(tableName).replace(query, option).then(successCallback).fail(errorCallback);

哪一个是正确的。我试了两次,但没有更新记录。

IBM Worklight Version 6.1.0.2

提前感谢。

回答

3

replace API将JSONStore文档作为第一个参数。例如:

{_id: 1, json: {userPreferencesID: 1, firstname: 'Test Name', lastName: 'Test Name 2'}} 

通知的_idjson密钥。您没有将文档作为第一个参数传递。

以下是用于在Worklight v6.1中替换API的API documentation

当你使用,例如,findAll API你得到JSONStore文件:

WL.JSONStore.get('collection').findAll() 
.then(function (jsonstoreDocuments) { 
    // [{_id: 1, json: {name: 'carlitos', age: 99}}] 
}); 

上面的例子假设的JSONStore集合不为空,如果是空的,你会得到一个空数组回(即[])。

+0

嗨,谢谢。我知道了。我完全忘了_id部分。接得好。 – Ragu 2014-11-21 05:22:53