AsymmetricObject

extension AsymmetricObject

Inicializadores

  • Cria uma instância não gerenciada de um objeto de Realm.

    O argumento value é utilizado para preencher o objeto. Pode ser um objeto compatível com codificação key-value, uma array ou dicionário retornado dos métodos em NSJSONSerialization ou um Array contendo um elemento para cada propriedade gerenciada. Uma exceção será lançada se alguma propriedade obrigatória não estiver presente e essas propriedades não tiverem sido definidas com valores padrão.

    Ao passar um Array como argumento value , todas as propriedades devem estar presentes, válidas e na mesma ordem que as propriedades definidas no modelo.

    Declaração

    Swift

    public convenience init(value: Any)

    Parâmetros

    value

    O valor utilizado para preencher o objeto.

Propriedades

Personalização de objetos

  • Substitua este método para especificar um mapa de nomes de propriedades público-privadas. Isso definirá um nome de propriedade persistente diferente no Realm e permitirá o uso do nome público para qualquer operação com a propriedade. (Ex: query, classificação, ...). Isto é muito útil se você precisar mapear os nomes das propriedades do seu JSON schema Device Sync para os nomes de propriedades locais.

    class Person: AsymmetricObject {
        @Persisted var firstName: String
        @Persisted var birthDate: Date
        @Persisted var age: Int
    
        override class public func propertiesMapping() -> [String : String] {
            ["firstName": "first_name",
             "birthDate": "birth_date"]
        }
    }
    

    Observação

    Somente as propriedades que têm um nome de coluna diferente devem ser adicionadas ao dicionário de mapeamento de propriedades.

    Declaração

    Swift

    open override class func propertiesMapping() -> [String : String]

    Valor de retorno

    Um dicionário de nomes de propriedades público-privadas.

Codificação e assinatura de valor-chave

  • Retorna ou define o valor da propriedade com o nome fornecido.

    Declaração

    Swift

    @objc
    open subscript(key: String) -> Any? { get set }