【问题标题】:RealmSwift with Alamofire5RealmSwift 与 Alamofire5
【发布时间】:2018-08-24 03:53:32
【问题描述】:

我尝试将 RealmSwift 与 alamofire5 和 Codable 一起使用。我按照这个指南写了一个network layer。

实际上它完美无缺,直到尝试配置 Realm。 我检查了这个question 并找到了这个gist。不幸的是,它并没有解决我的问题。

我也试过这个tutorial,但我得到了错误,我猜 alamofire5 解码器正在抱怨什么。(错误:The data couldn’t be read because it is missing.)。我试图用这个SO solution 解决错误,但它不起作用,我将所有内容恢复为无领域版本。

这是我的结构:

struct User: Codable{
var account_type:Int? = -1
var gender:String? = ""
var age:Int? = 0
var password:String? = ""
var name:String? = ""
var email:String? = ""
var image_path:String? = ""
var access_token:String? = ""
var refresh_token:String? = ""
var device_id:String? = ""
var card_number:Int? = 0
var id_token:String? = ""
var status:Int? = STATUS_DESCRIPTION.BAD_REQUEST.rawValue
var msg: String? = ""

init(account_type:Int, device_id:String, token:String) {
    self.account_type = account_type
    self.device_id = device_id
    self.id_token = token
}
init(email:String, name:String, password:String, device_id:String, account_type:Int){
    self.password = password
    self.name = name
    self.email = email
    self.account_type = account_type
    self.device_id = device_id
}
init(email:String, password: String, device_id:String, account_type:Int) {
    self.account_type = account_type
    self.device_id = device_id
    self.email = email
    self.password = password
}
}

感谢您的阅读,任何帮助将不胜感激:)

【问题讨论】:

    标签: ios swift realm alamofire codable


    【解决方案1】:

    您不应该在每个参数前面分配值并像这样使它们成为可选的。 模型需要

    init(){
    
    }
    
    
    init(from decoder: Decoder) throws{
    
    }
    

    按照link中的描述编写您的模型

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多