2016-03-05 2 views
-2

Я получаю сообщение об ошибке при попытке запустить мой проект в Xcode. По какой-то причине функция «userid» не будет построена, и я довольно новичок в программировании, поэтому я не знаю, как это сделать. В простой строке, которая дает мне ошибку, предполагается, что пользователь может войти в свою учетную запись instagram для использования приложения. Я получаю сообщение об ошибке, что читаетиспользование неразрешенного идентификатора (swift)

использование неразрешенного идентификатора "идентификатором пользователя"

Вот мой код:

 if (result.result.isSuccess) { 
     let json = JSON(result.result.value!) 

     if (self.loginType == .Instagram) { 
     if let accessToken = json["access_token"].string, _ = json["user"]["id"].string { 
      print("Logged into Instagram") 
      let user = NSEntityDescription.insertNewObjectForEntityForName("User", inManagedObjectContext: self.coreDataStack.context) as! User 
      user.userID = userID 
      user.accessToken = accessToken 
      user.placesType = "Establishment" 
      user.uberAccessToken = "" 
      self.coreDataStack.saveContext() 
      self.performSegueWithIdentifier("unwindToMapView", sender: ["user": user]) 
     } 
     } else if (self.loginType == .Uber) { 
     if let accessToken = json["access_token"].string { 
      print("Logged into Uber") 
      if let fetchRequest = self.coreDataStack.model.fetchRequestTemplateForName("UserFetchRequest") { 
      do { 
       let results = try self.coreDataStack.context.executeFetchRequest(fetchRequest) as! [User] 
       let user = results.first! 
       user.uberAccessToken = accessToken 
       user.uberAccessTokenExpiryDate = NSDate().dateByAddingTimeInterval((60 * 60 * 24) * 30) 
       user.uberMostRecentRequestID = "" 
       self.coreDataStack.saveContext() 
       self.performSegueWithIdentifier("unwindToUberView", sender: ["user": user]) 
      } catch { 
       self.showAlertWithMessage("Please try again!", title: "Couln't Fetch User", button: "Ok") 
       print("Couldn't fetch user") 
       self.close() 
+2

Откуда: userID? вы нигде не определяете его –

+0

Я бы предположил, что вам нужно сделать 'let userID = json [" user "] [" id "]. string' в вашем' if' -запросе. – sbarow

+0

Заменить символ подчеркивания 'userID' – vadian

ответ

0

Ваша проблема заключается в

if let accessToken = json["access_token"].string, _ = json["user"]["id"].string { 

Вы присваивают идентификатор пользователя _ вместо userID. Попробуйте следующее:

if let accessToken = json["access_token"].string, userID = json["user"]["id"].string { 
+0

, который работал так, что приложение строит, но оно падает каждый раз, когда я вхожу в мою регистрационную информацию, поэтому я ищу, чтобы узнать, в чем проблема сейчас, спасибо за ваше предложение. –

+0

Если у вас есть новый вопрос, не стесняйтесь задавать новый вопрос ; включить журнал консоли и соответствующий код. Следите за дополнительными возможностями, которые разворачиваются силой;) – SmokeDispenser

+0

Хорошо спасибо! Эта платформа очень чувствительна, когда дело доходит до вопросов и как их «нужно» спросить, я буду помнить об этом. –

Смежные вопросы