Soo我一直在为解析服务器添加信息,问题是我似乎无法通过PFQuery获得我需要的字符串。
如果打印对象,它将返回一个空数组。同样(fahrtenRequests.count = 0)。有人认为,这是因为PFQuery无法读取我的数据,或者我的数据格式不正确。
我在这里完全迷路了,似乎一切都应该很好,但不是
(谢谢你提前提供帮助:)
我的代码:
import UIKit
import Parse
class HistoryViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
var zeit: Array = [String]()
var kosten:Array = [String]()
var kilometer: Array = [String]()
var datum: Array = [String]()
@IBOutlet weak var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.delegate = self
tableView.register(UINib(nibName: "CellHistoryViewControllerTableViewCell", bundle: nil), forCellReuseIdentifier: "CellHistory")
let query = PFQuery(className: "GemachteFahrten")
query.whereKey("gefahreneZeit", equalTo: (PFUser.current()?.objectId!)!)
query.whereKey("kosten", equalTo: (PFUser.current()?.objectId!)!)
query.whereKey("createdAt", equalTo: (PFUser.current()?.objectId!)!)
query.whereKey("gefahreneKilometer", equalTo: (PFUser.current()?.objectId!)!)
query.findObjectsInBackground { (objects, error) in
if error != nil {
print("error finding user data")
} else {
print("check2")
print(objects!)
if let fahrtenRequests = objects {
print(fahrtenRequests.count)
再次感谢您的帮助:)
发布于 2016-10-18 09:42:55
不,PFQuery不是这样工作的。equalTo:
后的对象必须与您的分析仪表板中的key:@"..."
下的对象类型相同。
例如,在您的示例中,如果要检索一个用户所做的所有旅行,首先需要将用户保存为指向用户类的指针:(在解析仪表板中,选择Edit->Add列,然后选择指针作为类型,用户作为目标类)
let trip = PFObject(className:"GemachteFahrten");
//save the user who made this trip
trip["user"] = PFUser.current()
//save other things like costs, distance...etc
trip["kosten"] = ...
trip["gefahreneKilometer"] = ...
trip.saveInBackground()
然后,我们希望获得属于当前用户的所有旅行:
let query = PFQuery(className: "GemachteFahrten")
query.whereKey("user", equalTo: PFUser.current())
//then execute the query
请参阅分析文档http://parseplatform.github.io/docs/ios/guide/#queries
发布于 2016-10-18 07:51:50
如何将所有列值与用户的对象id进行比较?
比较结果为null,尝试使用适当的值。此外,您不应该查询createdAt
参数,即它的Date
类型。检查是否有适当的数据类型。
https://stackoverflow.com/questions/40102324
复制相似问题