ios - 为当前用户更新解析对象而不是创建重复条目

标签 ios swift parsing

我正在尝试让用户更新他们的位置。当我尝试保存数据时,它会创建一个重复条目而不是更新旧信息。我有一个部署到 mongolabs 数据库的 heroku 解析服务器。

class DropLoc: UIViewController, CLLocationManagerDelegate { 

var user = PFUser.currentUser()
var post = PFObject(className:"Post")
var query = PFQuery(className:"Post")
var point:  PFGeoPoint!
let porta = CLLocationManager()


override func viewDidLoad() {
    super.viewDidLoad()


    var curGate = porta.location

    self.porta.delegate = self
    self.porta.desiredAccuracy = kCLLocationAccuracyBest
    self.porta.requestWhenInUseAuthorization()
    self.porta.startUpdatingLocation()
    point = PFGeoPoint(location: curGate)


    query.whereKey("user", equalTo: user!)
    query.findObjectsInBackgroundWithBlock {(objects: [PFObject]?, error: NSError?) -> Void in
        if error != nil {
            print(error)
        }else{
            self.post["user"] = self.user ?? NSNull()
            self.post["location"] = self.point ?? NSNull()
            self.post.saveInBackground()

        }
    }
}

最佳答案

看起来 point 只设置了一次。尝试从 CLLocationManagerDelegate 添加以下方法协议(protocol)。

func locationManager(manager: CLLocationManager, didUpdateToLocation newLocation: CLLocation, fromLocation oldLocation: CLLocation) {
        // updated coordinate
        point = PFGeoPoint(location: manager.location!)        
}

关于ios - 为当前用户更新解析对象而不是创建重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38816863/

相关文章:

c++ - cv::Mat 灰度样式转换

ios - Swift:检查对象属性的类型(反射)

ios - 使用 Swift 将 GIF 背景添加到 viewController

swift - 单元测试 View 在 XCTestCase 中被驳回

ios - 如何在 Swift 中编写通用的 apply() 函数?

ios - 使用 Swift 在 Xcode 中避免从一个 View Controller 到另一个 View Controller 的延迟

html - 从 Ruby 中的 HTML 字符串生成 HTML 页面的原始字符串元描述?

ios - 带有 UIButton 的 UITableViewCell 不滚动

c - 如何将C函数映射到LLVM IR?

arrays - 在 Julia 中将字符串数组解析为对象