Conversion d'objets de ligne SQLAlchemy en dictionnaires Python
Lorsque vous travaillez avec SQLAlchemy, vous pouvez rencontrer des situations dans lesquelles vous devez convertir des objets de ligne en dictionnaires Python . Cela peut être particulièrement utile pour parcourir des paires nom-valeur de colonne ou transmettre des données de ligne à des applications externes.
Utilisation du dictionnaire interne de SQLAlchemy
Une approche pour convertir une ligne SQLAlchemy un objet à un dictionnaire consiste à accéder à son attribut interne dict. Cet attribut contient une représentation sous forme de dictionnaire des attributs de l'objet. Pour utiliser cette approche, parcourez simplement l'attribut dict :
for u in session.query(User).all(): print(u.__dict__)
Cela générera un dictionnaire contenant les noms de colonnes et les valeurs de chaque ligne.
Utilisation de la bibliothèque Marshal de SQLAlchemy
Alternativement, SQLAlchemy fournit la bibliothèque marshal, qui propose des méthodes pour convertir les objets SQLAlchemy en différents formats, y compris des dictionnaires. Le code suivant montre comment utiliser marshal.to_dict() pour convertir des objets User en dictionnaires :
from sqlalchemy.ext import marshal for u in session.query(User).all(): print(marshal.to_dict(u))
Cette méthode produira un dictionnaire avec une clé pour chaque nom de colonne et une valeur pour chaque valeur de colonne.
Remarque : L'utilisation de marshal.to_dict() nécessite SQLAlchemy version 0.6 ou supérieure. Si vous utilisez une version antérieure, vous pouvez utiliser l'attribut dict à la place.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!