21.12.2022 Views

python_para_desenvolvedores_2ed

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

154 Persistência

storage = FileStorage.FileStorage('people.fs')

db = DB(storage)

# Conectando

conn = db.open()

# Referência para a raiz da árvore

root = conn.root()

# Um registro persistente

root['singer'] = 'Kate Bush'

# Efetuando a alteração

transaction.commit()

print root['singer'] # Kate Bush

# Mudando um item

root['singer'] = 'Tori Amos'

print root['singer'] # Tori Amos

# Abortando...

transaction.abort()

# O item voltou ao que era antes da transação

print root['singer'] # Kate Bush

O ZODB tem algumas limitações que devem ser levadas em conta durante o

projeto da aplicação:

▪ Os objetos precisam ser “serializáveis” para serem armazenados.

▪ Objetos mutáveis requerem cuidados especiais.

Objetos “serializáveis” são aqueles objetos que podem ser convertidos e

recuperados pelo Pickle. Entres os objetos que não podem ser processados

pelo Pickle, estão aqueles implementados em módulos escritos em C, por

exemplo.

YAML

YAML é um formato de serialização de dados para texto que representa os

dados como combinações de listas, dicionários e valores escalares. Tem como

principal característica ser legível por humanos.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!