Skip to content

Commit 90725f1

Browse files
vitaly-burovoy1st1
authored andcommitted
Implement "as_dict" method for PostgresMessage
Sometimes it is useful to get all non-None members, usually for logging. Do it in a base class to avoid copy-pasting in users' code.
1 parent 35bce5a commit 90725f1

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

asyncpg/exceptions/_base.py

+9
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,15 @@ def new(cls, fields, query=None):
127127

128128
return e
129129

130+
def as_dict(self):
131+
message = {}
132+
for f in type(self)._field_map.values():
133+
val = getattr(self, f)
134+
if val is not None:
135+
message[f] = val
136+
137+
return message
138+
130139

131140
class PostgresError(PostgresMessage, Exception):
132141
"""Base class for all Postgres errors."""

0 commit comments

Comments
 (0)