Skip to content

Commit d148298

Browse files
authored
maybe_single with no matching rows returns None (#231)
1 parent 67572ba commit d148298

File tree

2 files changed

+4
-16
lines changed

2 files changed

+4
-16
lines changed

postgrest/_async/request_builder.py

+2-8
Original file line numberDiff line numberDiff line change
@@ -122,19 +122,13 @@ async def execute(self) -> SingleAPIResponse:
122122

123123

124124
class AsyncMaybeSingleRequestBuilder(AsyncSingleRequestBuilder):
125-
async def execute(self) -> SingleAPIResponse:
125+
async def execute(self) -> Optional[SingleAPIResponse]:
126126
r = None
127127
try:
128128
r = await super().execute()
129129
except APIError as e:
130130
if e.details and "Results contain 0 rows" in e.details:
131-
return SingleAPIResponse.from_dict(
132-
{
133-
"data": None,
134-
"error": None,
135-
"count": 0, # NOTE: needs to take value from res.count
136-
}
137-
)
131+
return None
138132
if not r:
139133
raise APIError(
140134
{

postgrest/_sync/request_builder.py

+2-8
Original file line numberDiff line numberDiff line change
@@ -122,19 +122,13 @@ def execute(self) -> SingleAPIResponse:
122122

123123

124124
class SyncMaybeSingleRequestBuilder(SyncSingleRequestBuilder):
125-
def execute(self) -> SingleAPIResponse:
125+
def execute(self) -> Optional[SingleAPIResponse]:
126126
r = None
127127
try:
128128
r = super().execute()
129129
except APIError as e:
130130
if e.details and "Results contain 0 rows" in e.details:
131-
return SingleAPIResponse.from_dict(
132-
{
133-
"data": None,
134-
"error": None,
135-
"count": 0, # NOTE: needs to take value from res.count
136-
}
137-
)
131+
return None
138132
if not r:
139133
raise APIError(
140134
{

0 commit comments

Comments
 (0)