无法下标PFObject错误

时间:2015-12-21 18:01:18

标签: swift parse-platform pfobject

我试图解决这个错误,但我没有运气这样做。我收到错误:Cannot subscript a value of type '[PFObject]' with an index of type 'String'在这行代码中:self.postDates.append(posts["createdAt"] as! String)

这是我遇到问题的代码部分:

var posts : [Post] = []
var postDates = [String]()

func loadData() {
    var query = PFQuery(className: "Post")
    query.orderByDescending("createdAt")

    query.findObjectsInBackgroundWithBlock {(posts: [PFObject]?, error: NSError?)-> Void in

        if error == nil {
            if let posts = posts {
                for post in posts {
                    self.postDates.append(posts["createdAt"] as! String)
                }
                self.tableView.reloadData()
            }
        } else {
            // is an error
        }
    }
}

我试图获取日期,然后每次用户使用Parse创建新帖子时显示它。谁能解释一下发生了什么?

这是我跟随的教程:https://www.youtube.com/watch?v=L3VQ0TE_fjU

2 个答案:

答案 0 :(得分:0)

您正试图获取(并添加)PFObject日期创建的文件 相反,你得到PFObject的日期和数组(哪些帖子是)。

您应该尝试获取数组中的元素,并从元素而不是数组中获取日期。

for post in posts{
    postDates.append(post["createdAt"] as! String)
}

答案 1 :(得分:0)

由于postsPFObject的数组,您如何从String获取元素?它应该是Int。这只是你的错字,你已经知道你在做什么。 post是您想要的PFObject

for post in posts {
    self.postDates.append(post["createdAt"] as! String)
}