swift 1.2使用Parse.com更新查询错误

时间:2015-05-19 03:33:00

标签: xcode swift parse-platform

我一直在学习使用swift 1.1在xcode上编写最近几天的代码

我刚刚更新到xcode的新版本,其中包含swift 1.2并且我遇到了很多错误。我已经基于stackoverflow中的其他条目解决了一些问题,但是我遇到了很多问题。

最大的问题是,在查询带有块的对象时,我并不完全理解如何正确地包装和解包选项

这是我的原始代码:

 @IBAction func LoadData(){
    NSLog("loading data")
    timelineData.removeAllObjects()
    var findTimelineData : PFQuery = PFQuery(className: "posts")
        findTimelineData.findObjectsInBackgroundWithBlock{
        (objects : [AnyObject]!, error : NSError!) -> Void in
        if (error == nil){
            for object in objects{
                self.timelineData.insertObject(object, atIndex: 0)
                println("added one post")
            }
        }else{
            NSLog("error")
        }

我知道我应该用

开始我的阻止
(objects, error)

并包含一些let语句,但我尝试过的任何内容都没有效果。有人可以给我一些指导吗?

谢谢你, -AVF

1 个答案:

答案 0 :(得分:1)

你有没有尝试过:

 @IBAction func LoadData(){
    NSLog("loading data")
    timelineData.removeAllObjects()
    var findTimelineData : PFQuery = PFQuery(className: "posts")
        findTimelineData.findObjectsInBackgroundWithBlock{
        (objects : [AnyObject]?, error : NSError?) -> Void in
        if (error == nil){
            for object in objects!{
                self.timelineData.insertObject(object, atIndex: 0)
                println("added one post")
            }
        }else{
            NSLog("error")
        }

如果值是可选的,则取决于findObjectsInBackgroundWithBlock函数,如果您控制单击它,您可以看到它的使用方式(自动完成也应该为您正确创建)