数据类型为double的后端列将导致零值

时间:2016-07-01 07:22:16

标签: ios swift backendless

我有一个backendless表,有2列(纬度和经度),双数据类型。

在我的课堂上,BlTable我有这2个字段

var latitude: Double?
var longitude: Double?

我的后端查询是这样的:

 let query = BackendlessDataQuery()
 query.whereClause = "latitude IS NOT NULL AND longitude IS NOT NULL"
 backendlessInstance.persistenceService.of(Post.ofClass()).find(query,
    response: { blPosts in
      guard let posts = blPosts.data as? [Post] else {
        reject(BackendlessError.InvalidTypeForObject(name: "Post"))
        return
      }

      fulfill(posts)
    },
    error: { fault in
      reject(BackendlessError.ReceivedFault(fault))
  })

当我记录纬度和经度的值时,它返回nil值。我已经用我的无后端数据检查了列lat和long已填充。

还有其他需要考虑的事项吗?

2 个答案:

答案 0 :(得分:0)

获得双倍价值。但我所做的是将Swift实体的数据类型设置为NSNumber,然后使用.doubleValue

答案 1 :(得分:0)

在Inte,Double,Float和Bool类型的Backendless字段中的

不能是可选的,它们必须初始化: https://backendless.com/documentation/data/ios/data_data_object.htm