Parse.com保存对象一次

时间:2014-07-06 01:03:22

标签: ios objective-c parse-platform

我正在将PFObject被调用的项目保存到名为Objects的类中。所以类是Objects,在那个类中我有一个名为item的列(它是字符串对象)。每次点击tableView中的一行时,该应用都会保存该行的文本进行解析。

例如,如果您点击此行3次,则会将文本保存3次。有没有办法只保存一次。

我可以使用if语句检查该字符串是否已存在于解析中,如果是,则不保存。

更新

如果我有一个名为MenuItem的类。在MenuItem中,我有一个名为item的字符串列。

然后在我的应用中我有

menuItem[@"item"] = @"item1";
[menuItem saveInBackground];

每次打开应用程序时都会运行此代码。

我该怎么检查?

我正在查看文档,我认为它是这样的?

   PFQuery *query = [PFQuery queryWithClassName:@"MenuItem"];
[query whereKey:@"item" hasPrefix:@""];
[query findObjectsInBackgroundWithBlock:^(NSArray *items, NSError *error) {


    if (!error) {
        // The find succeeded.
        NSLog(@"Successfully retrieved %lu items.", (unsigned long)items.count);
        // Do something with the found objects
        for (PFObject *item in items) {
            NSLog(@"%@", item.objectId);
        }
    } else {
        // Log details of the failure
        NSLog(@"Error: %@ %@", error, [error userInfo]);
    }


}];

我只是错过if语句来检查项目是否已存在?

谢谢

4 个答案:

答案 0 :(得分:1)

在没有代码的情况下给出确切的答案有点困难,但如果我愿意,我会这样做:

一个。版本

如果你必须保存一个NSString变量,我会在User类中创建一个Item列并保存在那里。这样,如果用户多次点击同一个单元格,他将一次又一次地重写相同的字符串。

湾版本

在保存字符串之前,您可以查询Objects类并遵循一些不同的逻辑。我的观点是,最简单的方法是循环使用当前用户上传的每个对象,如果用户已经拥有与当前单元格具有相同字符串的对象,则不要上传照片和用户可以根据需要多次点击同一个单元格。

℃。版本

以某种方式显示单元格被点击,因此用户将知道何时点击了单元格。它不确定哪个动作上传内容,如果您使用按钮为不同的状态设置不同的颜色,或者如果您使用单元格,只需编辑所选单元格的颜色。

答案 1 :(得分:0)

这样做的一种方法是,编写解析查询(PFQuery到项类)以查明用户是否已经用户点击过,如果没有,则用户将其保存为新对象,否则就没有了需要再次保存它。

答案 2 :(得分:0)

这应该这样做

如果你必须保存一个NSString变量,我会在User类中创建一个Item列并将其保存在那里。这样,如果用户多次点击同一个单元格,他将一次又一次地覆盖相同的字符串。

[saveInBackgroud];

答案 3 :(得分:0)

在背景中使用保存

[parseObject saveInBackgroud];