geo*_*ebp 5 postgresql json date pg swift
当我尝试从具有日期变量的数据库中解码 JSON 对象时,出现错误“由于未捕获的异常‘NSInvalidArgumentException’而终止应用程序,原因:‘JSON 写入中的无效类型 (__NSTaggedDate)’”。错误发生在以下代码行: let jsonData = try JSONSerialization.data(withJSONObject: self) 中:
extension Array where Element == Dictionary<String,Any> {
func decode<T>() throws -> [T] where T: Codable {
let jsonData = try JSONSerialization.data(withJSONObject: self)
// 1.
let decoder = JSONDecoder()
// 2.
return try decoder.decode([T].self, from: jsonData)
}
}
Run Code Online (Sandbox Code Playgroud)
我使用此方法使用 PG 依赖项将 Postgres SELECT 查询的结果转换为 Codable 对象数组。
case .success(let result):
let array = result.rows.map { Dictionary($0) }
let objects = try! array.decode() as [Model]
completion(objects,nil)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4588 次 |
| 最近记录: |