如何在此JSON之后创建Struct模型?

时间:2018-06-13 09:20:50

标签: json swift codable

这是我的JSON:

https://pastebin.com/8HR6jcuC

这是我创建的模型虽然无法解码:

Select * from my_data where id between ($id+1) and ($id+4) ORDER BY id DESC

1 个答案:

答案 0 :(得分:1)

请抓住错误并处理它。 Codable错误非常具有描述性。

  

类型'Int'不匹配:预计会解码Int,但会找到字符串/数据。

     

codingPath:[CodingKeys(stringValue:“results”,intValue:nil),_ JSONKey(stringValue:“Index 0”,intValue:0),CodingKeys(stringValue:“items_bought”,intValue:nil),_ JSONKey(stringValue: “Index 0”,intValue:0),CodingKeys(stringValue:“price”,intValue:nil)]

明确指出priceBoughtItemsString而不是Int

let price: Int替换为let price: String后,您将收到其他错误

  

类型'字符串'不匹配:预计会解码字符串,但会找到一个数字。

     

codingPath:[CodingKeys(stringValue:“results”,intValue:nil),_ JSONKey(stringValue:“Index 0”,intValue:0),CodingKeys(stringValue:“total”,intValue:nil)]

这也很清楚。 total的类型为Double,而不是String

修复:let total: Double

请了解阅读 JSON。这很简单:

  • 双引号中的所有内容(例外)均为String
  • 浮点数值为Double
  • 其他数值为Int
  • truefalse(无双引号)为Bool