Parse Issue显示相关的关系值

时间:2015-03-19 14:31:16

标签: swift parse-platform relational pfquery commenting

现在我正在做一个正常的主题并评论集成的应用程序。已经执行了发布主题,发布评论以及将我的评论指针设置到Topic类等功能。 但是现在过去几天给我带来麻烦的问题是,所显示的评论无法分类到每个主题,无论他们来自哪个不同主题,它们都聚集在一起。

我的PFObjects是主题和评论,完全是两个类。 主题有对象:标题,内容和用户。 注释具有对象:内容,父(指向主题的指针)和用户。

已经检查了解析数据库,看起来每个评论都有自己主题的对象ID中的相同父键。但仍然想知道为什么他们无法相应地展示。

这是我的编码。如果有人能借给我们,我将感激不尽。伸出援手。

var timelineCommentData:NSMutableArray = NSMutableArray()
func loadData(){
    timelineCommentData.removeAllObjects()

    var findCommentData:PFQuery = PFQuery(className: "Comment")
    findCommentData.findObjectsInBackgroundWithBlock({
        (objects:[AnyObject]!,error:NSError!)->Void in

        if (error == nil) {
            for object in objects {
                self.timelineCommentData.addObject(object)
            }

            let array:NSArray = self.timelineCommentData.reverseObjectEnumerator().allObjects
            self.timelineCommentData = array.mutableCopy() as NSMutableArray

            self.tableView.reloadData()

        }
    })
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

return timelineCommentData.count + 1       //+1 is for displaying the topic

}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let identifier = indexPath.row == 0 ? "storyCell" : "CommentCell"
    let cell = tableView.dequeueReusableCellWithIdentifier(identifier) as UITableViewCell

    if let storyCell = cell as? TopicTableViewCell{
     storyCell.titleLabel.text = topic?.objectForKey("title") as? String
     storyCell.contentLabel.text = topic?.objectForKey("content") as? String
     storyCell.timestampLabel.text = timeAgoSinceDate(topic!.createdAt, true)

    }
    storyCell.delegate = self
    }

    if let CommentCell = cell as? CommentsTableViewCell {
     let comment:PFObject = self.timelineCommentData.objectAtIndex(indexPath.row - 1) as PFObject    ///// Is anything wrong here??
     var query = PFQuery(className: "Comment")
     query.whereKey("parent", equalTo:topic)


        query.findObjectsInBackgroundWithBlock({
            (objects:[AnyObject]!,error:NSError!)->Void in

            if (error == nil) {

                CommentCell.commentLabel.text = comment.objectForKey("commentContent") as? String   /////Or here
                CommentCell.timeLabel.text = timeAgoSinceDate(comment.createdAt, true)

            }
            else{

                println("no comment")
            }
        })


    CommentCell.delegate = self
    }

    return cell
}

0 个答案:

没有答案