2015-11-04 65 views
1

我试图将另一个对象添加到PFRelation。我想我已经检查了最常见的问题和我试图添加的对象已经保存在解析。此外,关系指向与我试图添加的对象类型相同类型的解析类。当我尝试将新对象添加到PFRelation时,应用程序挂起

代码

func tapToJoin() { 
    dispatch_async(queue) {() -> Void in 
     if let user = User.localUsername() { 
      joinToEvent(user, toEventWithId: eventId) { (success) in 
       dispatch_async(dispatch_get_main_queue(), {() -> Void in 
        if success { 
         SVProgressHUD.showSuccessWithStatus("Joined") 
        } else { 
         SVProgressHUD.showErrorWithStatus("Error") 
        } 
       }) 
      } 
     } 
    } 
} 

func joinToEvent(user:User,toEventWithId eventId:String, complete:(Bool)->Void){ 
    do { 
     //1. query event 
     let eventQuery = PFQuery(className: "Event", predicate: NSPredicate(format: "objectId = %@",eventId)) 
     let event = try eventQuery.findObjects().first 
     //2. find user 
     let userQuery = PFQuery(className: "User", predicate: NSPredicate(format: "objectId = %@",user.id)) 
     let parseUser = try userQuery.findObjects().first! 
     //3. add user to event.participants 
     let eventParticipants = event?.objectForKey("participants") as! PFRelation 
     eventParticipants.addObject(parseUser) 
     //4. save event to parse 
     try event?.save() 
     complete(true) 
    } catch { 
     complete(false) 
    } 
} 

问题

应用程序挂起在eventParticipants.addObject(parseUser)。我不知道我应该如何处理这个问题。

+1

至少有一个问题是,eventParticipants应该'event.relationForKey'进行初始化,而不是'objectForKey' – danh

+0

-.-我不我知道我很想念它。请添加它作为答案,所以我可以接受它:) –

回答

1

至少有一个问题是,eventParticipants应该event.relationForKey初始化,不objectForKey

相关问题