Pergunta

dict(16) 
    ['zone'] => str(3) "S/Z"
    ['name'] => str(20) "John user"
    ['country'] => str(3) "AGO"
    ['date1'] => str(10) "2012-04-23"
    ['date2'] => str(10) "1970-06-24"
    ....

 def save(self):
         insert_client = db.insert('clients', zone = dict.get('zone'), ...)   

A única maneira que eu conheço é, com uma inserção básica, e depois itera o dicionário para fazer n atualizações para n itens no dict.

for key, val in dictionary.iteritems():
    update_client = db.update('clients', key = val)   

Alguma idéia de tornar a inserção mais agradável de trabalhar? Ou devo usar a inserção básica e concluir o perfil do cliente com atualizações?

PS: As chaves do Python Dict são o nome da coluna do banco de dados,

Foi útil?

Solução

Que tal usar ** (Deputamento de argumentos de palavras -chave)?

insert_client = db.insert('clients', **dict)

Btw, não use dict como um nome de variável. TI SHADOWS FUNÇÃO CONCTULA dict:

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top