Ios If语句不使用解析
我正在检索一个我知道在parse中为nil的值,在表中进行检查并使用print语句,但它仍然被if语句忽略。为什么会这样Ios If语句不使用解析,ios,swift,parse-platform,Ios,Swift,Parse Platform,我正在检索一个我知道在parse中为nil的值,在表中进行检查并使用print语句,但它仍然被if语句忽略。为什么会这样 class func checkLicense(){ var compQuery = PFQuery(className:"User") var userDefaults = NSUserDefaults.standardUserDefaults() var secretKey = userDefaults.stringForKey("secretke
class func checkLicense(){
var compQuery = PFQuery(className:"User")
var userDefaults = NSUserDefaults.standardUserDefaults()
var secretKey = userDefaults.stringForKey("secretkey")
var team = userDefaults.stringForKey("teamID")
var scout = userDefaults.stringForKey("scoutID")
var password = userDefaults.stringForKey("password")
compQuery.whereKey("teamID", equalTo:"1")
compQuery.whereKey("scoutID", equalTo:"1")
compQuery.whereKey("password", equalTo:"1234")
compQuery.findObjectsInBackgroundWithBlock {
(users: [AnyObject]!, error: NSError!) -> Void in
if error == nil && users.count >= 1{
let date = NSDate()
let calendar = NSCalendar.currentCalendar()
let components = calendar.components(.CalendarUnitHour | .CalendarUnitMinute | .DayCalendarUnit | .CalendarUnitMonth | .CalendarUnitYear, fromDate: date)
let expiraton = date.dateByAddingTimeInterval(10800)
let expirecomponents = calendar.components(.CalendarUnitHour | .CalendarUnitMinute | .DayCalendarUnit | .CalendarUnitMonth | .CalendarUnitYear, fromDate: expiraton)
let hour = components.hour
let minutes = components.minute
let month = components.month
let year = components.year
let day = components.day
let exhour = expirecomponents.hour
let exminutes = expirecomponents.minute
let exmonth = expirecomponents.month
let exyear = expirecomponents.year
let exday = expirecomponents.day
var query = PFQuery(className:"User")
for user in users{
if user["secretkey"] == nil {
query.getObjectInBackgroundWithId(user.objectId) {
(newData: PFObject!, error: NSError!) -> Void in
if error != nil {
NSLog("%@", error)
} else {
newData["secretkey"] = "\(secretKey!)"
newData["keyDate"] = "\(month)/\(day)/\(year) \(hour):\(minutes)"
newData["keyExpireDate"] = "\(exmonth)/\(exday)/\(exyear) \(exhour):\(exminutes)"
newData.save()
println("License Agent Completed License Data Refresh")
}
}
}
}
}
}
}
问题是由线路引起的
if user["secretkey"] == nil {
不精通Swift,但您不缺少a=吗?如果用户[secretkey]==nil,不应该是这样吗?是的,对不起,代码中有这个。。我抄错了。进行编辑以更正错误。谢谢。我对Swift有点不熟悉,但它不是赋值运算符吗?那么你怎么知道这个值是零呢?是否在if?之前直接插入了打印?是否检查了null值是否转换为NSNull?我建议将user[secretkey]的值存储到一个变量中并检查它