So erstellen Sie sqlalchemy nach json

7

Ich habe ein sqlalchemy-Ergebnis

%Vor%

Und ich möchte dieses Ergebnis in JSON konvertieren, aber wie kann ich das machen?

    
Nolik 17.02.2013, 10:22
quelle

6 Antworten

17

Ihr LabelsData -Objekt scheint ein SQLAlchemy-Modell zu sein. Sie müssen es serialisieren, bevor Sie es in JSON ablegen. Hier ist ein kurzes Beispiel, das alle Spalten aus Ihrem LabelsData -Objekt extrahiert und die Ergebnisse Ihrer Abfrage in JSON konvertiert:

%Vor%     
mtth 18.02.2013, 03:24
quelle
2
%Vor%

Von hier und scheinbar simplejson . Hoffnung, die hilft ...

UPDATE: Bei einem zweiten Blick ist es ein Wörterbuch, das Sie in einem der json-Module in Python ablegen können

    
hd1 18.02.2013 03:49
quelle
1

Sieht aus, als ob sqlalchemy bereits eins hat Ссылка

%Vor%     
Nande 26.10.2013 04:27
quelle
1

Dieser Blogpost lieferte die Lösung, mit der ich ging: Ссылка

Die verwendete Strategie bestand darin, eine .todict-Methode direkt in ein Basis-Mix zu integrieren, das über die Spalten der übergeordneten Klasse sqlalchemy iteriert.

Alternativ dazu Nandes -Ansatz ( Ссылка ) zu verwenden sqlalchemy.ext.serializer funktioniert gut, wenn Sie versuchen, Daten über die Leitung zu serialisieren, aber nicht unbedingt als json.

    
mekarpeles 29.01.2014 00:37
quelle
0

Ich füge diesen Verstärker hinzu, da es eine Mischung aus @mekarpele und @ hd1 ist. Ich meine, ich habe die sqlalchemy-Hierarchie von Objekten nicht verändert und delegiere nur an einen einfachen JSONEncoder :

%Vor%

Wenn Ihre Modelle keine serialisierbaren Klassen verwenden (zB datetime), müssen Sie diese zum Encoder hinzufügen:

%Vor%

Und dann benutze ich es mit einem jinja2-Kontextfilter:

%Vor%     
Bruno Thomas 04.02.2016 14:29
quelle
0

Ссылка
der Link oben kann Ihnen helfen, Es ist ein kleines Skript, das einfach SQL-Abfrage-Ergebnis zu Liste oder Diktat serialisieren kann, einfach so:

%Vor%     
Taylor 22.10.2016 19:45
quelle

Tags und Links