gpt4 book ai didi

javascript - parse还活着,但是如何通过 'index'查询

转载 作者:行者123 更新时间:2023-12-03 06:03:16 27 4
gpt4 key购买 nike

我发现Buddy平台现在支持Parse,但是旧Parse网站的所有论坛/帮助文件都消失了...

我想做的是按行号/索引查询表中的一行。

我现在这样做,但获取所有数据然后选择行对我来说似乎效率低下(尽管它工作正常):

var thisRow = Parse.Object.extend(GlobTable);
var query= new Parse.Query(thisRow);
query.descending('updatedAt');
query.find({
success: function(results) {

var object = results[RowNumberThatINeed];
//etc using object

@Ran,谢谢!不知怎的,它不起作用,Parse 将为每一行存储“1”:1,1,1,1。但它可以保存所有其他数据。

var Object = Parse.Object.extend(LocTable);
var obj = new Object();

obj.set("User", LocUser);
obj.set("Happened", d);
obj.set("Happy", b);
obj.set("Learned",a);
obj.set("ConnectedTo",c);
obj.increment("rowIndex");
obj.save({
success: function(obj) {

updateDatabase();
alert("Your data is saved");

},
error: function(obj, err) {
alert("Your data was not saved. Sorry..." + err);
}
});

最佳答案

您的解决方案可以工作,但是当您的表增长时,您会遇到很多性能问题。

我向您建议的是以下解决方案:

  1. 向您的 GlobTable 添加另一个整数类型的字段。该字段将是增量字段,并将存储您的行索引(我们将此字段称为 rowIndex)
  2. 每次将新对象保存到此表时,请确保使用以下命令递增此字段:

object.increment("rowIndex");

  • 现在您的查询应如下所示:
  • var thisRow = Parse.Object.extend(GlobTable);
    var query= new Parse.Query(thisRow);
    query.equalTo("rowIndex",RowNumberThatINeed);
    query.first().then(function(result){
    // do something with the result
    },function(error){
    // error handling
    });

    如果您希望获得更好的性能,您可以在 rowIndex 上创建索引(在 MongoDb 中)。

    在我的代码片段中,我根据最佳实践使用 Promise。

    我使用first而不是find,因为该索引总是有一个对象

    关于javascript - parse还活着,但是如何通过 'index'查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39662958/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com