在确定的帖子上,然后-6ren">
gpt4 book ai didi

ios - 在 Parse 和 Swift 中使用指针进行查询

转载 作者:可可西里 更新时间:2023-11-01 01:03:44 25 4
gpt4 key购买 nike

我正在尝试使用 Parse 中的指针进行查询。

基本上我有两个类 "commentsTable""_User",我想从类 "commentsTable" 中获取用户的评论> 在确定的帖子上,然后从类 "_User"

中获取 usernameprofile_pic

_用户类 enter image description here

commentsTable 类 enter image description here

    func loadAndShowComments(){
let query2 = PFQuery(className: "commentsTable")
query2.orderByDescending("createdAt")
query2.whereKey("newsColumns", equalTo: printteste!)
query2.includeKey("username")

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

if let objects = objects as [PFObject]? {

for object in objects {

print(object["commentColumn"])

}

}


for cardset in objects! {
var lesson = cardset["username"] as! PFObject
var name = lesson["username"] as! String
print("By user: \(name)")
}

我能够看到查询,打印结果并得到以下输出:

This is a post!
This is a test post!
By user: teste@teste.com
By user: mmachado

在我的应用程序中,我在 TableView 中显示此信息,我成功地可以在 func cellForRowAtIndexPath 中显示查询结果:

    if let usuarioComentario = object?["commentColumn"] as? String {
cell?.usuarioComentario?.text = usuarioComentario
}

但我无法返回我的其他类 _User

的值

我想我误解了一些概念,但此时我不知道什么概念,有什么想法吗?

谢谢。

最佳答案

通过使用 query2.includeKey("username"),您已经检索到与每个 commentsTable 关联的所有 User 数据 对象。

您可以使用以下方法访问相关的用户数据。

if let commentUser = object["username"] as? PFUser {
let name = commentUser["username"] as! String
let profilePicture = commentUser["profile_pic"] as! PFFile
}

您需要将查询结果存储到一个数组中以备后用(如果您尚未这样做的话)。如果您使用的是 Parse 提供的 PFQueryTableViewController,这将通过实现 queryForTable() 方法为您处理,结果会自动存储在名为 objects 的字典数组中

还值得注意的是,您仍然必须加载 PFFile,因为它们不包含在查询结果中。您需要将 PFFile 分配给 PFImageView,然后调用 loadInBackground。请参见下面的示例。

let imageView = PFImageView()

// Set placeholder image
imageView.image = UIImage(named: "placeholder")

// Set remote image
imageView.file = profilePicture

// Once the download completes, the remote image will be displayed
imageView.loadInBackground { (image: UIImage?, error: NSError?) -> Void in
if (error != nil) {
// Log details of the failure
println("Error: \(error!) \(error!.userInfo!)")
} else {
println("image loaded")
}
}

最后,我建议将 commentsTable 中的 User 指针的名称从“username”更改为“user”,这样就不会与用户类。 Here's a link to a great tutorial which you may also find helpful

关于ios - 在 Parse 和 Swift 中使用指针进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32979826/

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