Question

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'), ...)   

La seule façon dont je connais est, avec un insert de base, puis itérez le dictionnaire pour effectuer des mises à jour N pour N éléments dans Dict.

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

Une idée de rendre l'insert plus agréable à travailler? Ou dois-je utiliser l'insert de base, puis terminer le profil client avec des mises à jour?

PS: Les clés de Python Dict sont le nom de la colonne de la base de données,

Était-ce utile?

La solution

Que diriez-vous d'utiliser ** (Déballage d'argument des mots clés)?

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

Btw, n'utilisez pas dict comme nom variable. Il ombrage de fonction intégrée dict:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top