ios - 编码其模型中没有嵌套属性的嵌套对象

标签 ios json swift encoding codable

说我有以下结构:

struct Event: Codable {
    var id: Int
    .... // many non nested fields
}

在我的应用程序中,允许用户创建事件列表。用户完成操作后,我想通过POST请求将该列表传递到我的服务器。

为此,我需要创建一个看起来像这样的有效JSON对象。
这是Event的列表,其前导键为"events"
{ "events": [{"id": 1, ... more of the non nested fields ... },{ ... }]}

如何设置Event对象,使JSONEncoder.encode(events)返回上面的预期JSON?我真的想避免为每个字段都使用CodingKey,因为在这种情况下它们会进行编码,解码。我还想避免将此Event对象嵌套在另一个称为Events的结构中,以获得所需的结果。

最佳答案

您可以只对将events数组与键"events"关联的字典进行编码

JSONEncoder.encode(["events": events])

关于ios - 编码其模型中没有嵌套属性的嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60423274/

相关文章:

c++ - 从 Swift 调用 C++ 函数

jquery - 如何通过表单元素传递 json

json - HBase从具有行ID的任意JSON插入

ios - 在 Xcode 6 机器人上选择分支

ios - Swift:使用抛出异常的函数进行单元测试

java - 使用 GAE 服务帐户 JSON key

ios - 从 Swift Decodables 访问枚举的合适方法是什么?

swift - 将结构作为泛型类型传递并访问该泛型类型的属性

ios - 如何封装 UIViewController?

iphone - 在 iPhone 模拟器中录制音频时出错