我试图获取属于Vitrine所有者的客户端的名称。
无法访问PFRelation的属性
这是我的代码。
为了节省我这样做的数据:
self.vitrine["username"] = PFUser.currentUser()?.username
self.vitrine["name"] = nameTextField.text as String
var relation = self.vitrine.relationForKey("client")
relation.addObject(self.client)
self.vitrine.saveEventually { (success, error) -> Void in
if(error == nil){
}else{
println(error?.userInfo)
}
self.fetchAllVitrines()
self.navigationController?.popToRootViewControllerAnimated(true)
}
}
和它的作品。在解析中,我可以看到关系的工作。
我试图关系的访问数据这样做:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCellWithIdentifier("vitrineCell", forIndexPath: indexPath) as! VitrineTableViewCell
var object: PFObject = self.vitrineObjects.objectAtIndex(indexPath.row) as! PFObject
cell.nomeLabel.text = object["name"] as? String
let x: PFRelation = object["client"] as! PFRelation
// cell.clientNameTextView.text = object["client"]["name"] as String
return cell
}
但当我日志中的数据内的客户端列是什么出现对我来说:
<PFRelation: 0x7b7f1390, 0x7b7cfdc0.client -> Client>
请别人帮助我。我在那里2天。我阅读了3次以上的解析文档。我没有办法做到这一点。
问候, 迪奥戈·阿马拉尔
嗯,我添加代码:
query!.getFirstObjectInBackgroundWithBlock {
(object: PFObject?, error: NSError?) -> Void in
if error != nil || object == nil {
println("The getFirstObject request failed.")
} else {
println(object)
cell.clientNameTextView.text = object["name"] as? String
}
}
但行:cell.clientNameTextView.text = object["name"] as? String
抛出我的错误。 “不能分配'String?'类型的值类型为 '字符串!'”的价值...
我已经尝试过:
cell.clientNameTextView.text = object["name"] as! String
cell.clientNameTextView.text = object["name"] as String
cell.clientNameTextView.text = object["name"] as? String
我怎么能解决呢?
@DiogoAmaral我已经更新了示例代码来处理第一个对象的可选性,并将其转换为String。 – rickerbh