Provide a "class" row factory
Dieses Issue hat noch niemand übernommen.
- #57 von @ms2892 — ohne Merge geschlossen
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 25/100
Rechercherichtung
Beginne damit, die vorhandenen dict- und namedtuple-Zeilenfabriken im Repository zu lokalisieren, und vergleiche anschließend ihre Schnittstellen mit der Dokumentation von psycopg zu class_row. Die Änderung sollte clientdefinierte Dataclasses und pydantic-Modelle als Zeilenergebnisse unterstützen, mit einer statischen Typisierung ähnlich dem verknüpften Beispiel. Prüfe den geschlossenen Pull Request #57 auf Kontext zur vorherigen Implementierung und zum erwarteten Verhalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Is your feature request related to a problem? Please describe.
Currently, comdb2 module provides dict and namedtuple factories. It would also be nice to provide a "class" row factory which would allow rows returned as client-defined dataclasses, pydantic models, etc.
Describe the solution you'd like
See a similar concept in psycopg's class_row factory: https://www.psycopg.org/psycopg3/docs/api/rows.html#psycopg.rows.class_row
This also allows nice static type checking: https://www.psycopg.org/psycopg3/docs/advanced/typing.html#example-returning-records-as-pydantic-models
- Vorherrschende Sprache
- Python
- Sterne
- 29
- Forks
- 28
- Ø Merge
- 33 Min.
- Gemergte PRs (30 T.)
- 1
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus bloomberg/python-comdb2
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
bloomberg/python-comdb2#61 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 20/100
bloomberg/python-comdb2#60 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
bloomberg/python-comdb2#41 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
bloomberg/python-comdb2#36 · 1 Kommentar ·
Alle Issues in bloomberg/python-comdb2
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
awslabs/visual-asset-management-system#414 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug v1 v2
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
modelcontextprotocol/python-sdk#3670 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
aicell-lab/bioengine#232 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
modelscope/evalscope#1836 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100