Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 向服务器添加可编码模型_Swift_Realm_Codable - Fatal编程技术网

Swift 向服务器添加可编码模型

Swift 向服务器添加可编码模型,swift,realm,codable,Swift,Realm,Codable,我正在尝试将可编码的模型添加到域数据库中。模型工作,值从API调用传递。然而,我想在我的领域数据库中创建一个数组,因此当我点击保存按钮时,模型被添加到数据库中 我怎么会在创建时出现此错误 无法将“数据”类型的值转换为预期的参数类型 “对象” func创建(u对象:[T]),其中T:Codable{ 做{ 让placesData=try?JSONEncoder().encode(对象) 试试realm.write{ realm.add(placesData) } }抓住{ } } 保存UserD

我正在尝试将可编码的模型添加到域数据库中。模型工作,值从API调用传递。然而,我想在我的领域数据库中创建一个数组,因此当我点击保存按钮时,模型被添加到数据库中

我怎么会在创建时出现此错误

无法将“数据”类型的值转换为预期的参数类型 “对象”

func创建(u对象:[T]),其中T:Codable{
做{
让placesData=try?JSONEncoder().encode(对象)
试试realm.write{
realm.add(placesData)
}
}抓住{
}
}
保存UserDefaults是这样的

private func putModelArray<T>(_ value: [T]?, forKey key: String) where T: Codable {
        guard let value = value else {
            storage.removeObject(forKey: key)
            return
        }
        let placesData = try? JSONEncoder().encode(value)
        storage.setValue(placesData, forKey: key)
    }
private func putModelArray(u值:[T]?,forKey:String),其中T:Codable{
保护let值=其他值{
storage.removeObject(forKey:key)
返回
}
让placesData=try?JSONEncoder().encode(值)
storage.setValue(placesData,forKey:key)
}
这个

realm.add(placesData)
在向对象发送
数据时接受
对象
参数

如果您从json获取数据并为此使用可解码的,并不意味着您必须使用可编码的


那么,我如何将其保存在域中?因为我无法将可编码模型保存到DBUsing领域,所以我必须遵守Encodabletry
Realm.add(objects)
compile?
无法将类型为“UInt8”的值转换为预期的参数类型“Object”
将数据中的所有值提取到类对象中,然后将您的类对象放入领域。@AsadAliChoudhry您能展示代码示例吗?将领域对象编码为JSON并保存在数据库中的目标是什么?您能打印placesData变量并添加到您的问题中吗?如果您已经有一个对象数组,为什么要在保存到领域之前对其进行JSON编码?只需执行
realm.add(objects)
realm.add(placesData)