Como usar o tipo de lista com codificável? (RealmSwift)

O problema é que o tipo de lista não está em conformidade com Codable, a classe abaixo não pode ser inserida no Realm.

por exemplo,

class Book: Codable {
    var name: String = ""
    var author: String = ""
    var tags = [String]()
}

Considere que a classe acima está em conformidade com Codable, se armazenar esta classe no Realm, ela precisará usarList<Object> digite em vez de[String]

class Book: Object, Codable {
    @objc dynamic var name: String = ""
    @objc dynamic var author: String = ""
    var tags = List<Tag>()

    required convenience init(from decoder: Decoder) throws {
        self.init()
        let container = try decoder.container(keyedBy: CodingKeys.self)
        name = try container.decode(String.self, forKey: .name)
        author = try container.decode(String.self, forKey: .author)
        tags = try container.decode(List<Tag>.self, forKey: .tags)   // this is problem.
    }
}

class Tag: Object, Codable {
    @objc dynamic var string: String = ""

    required convenience init(from decoder: Decoder) throws {
        self.init()
        let container = try decoder.container(keyedBy: CodingKeys.self)
        string = try container.decode(String.self, forKey: .string)
    }
}

Para estar em conformidade com Codable, ele deve ser implementadoDecodable protocolo. (required convenience init(from decoder: Decoder) throws)

Mas,List tipo não está em conformidade comCodable(Decodable), é impossível usar Codable se a classe tiverList tipo.

Como resolver esse problema?

Obrigado,

questionAnswers(4)

yourAnswerToTheQuestion