Fix response_model being set to None for non-generator endpoints

This commit is contained in:
Yurii Motov
2026-06-15 15:31:57 +02:00
parent 6ab384c423
commit 3b0c595c2e

View File

@@ -1022,10 +1022,11 @@ def _populate_api_route_state(
response_model = None
else:
stream_item = get_stream_item_type(return_annotation)
if stream_item is not None:
# Extract item type for JSONL or SSE streaming when
# response_class is DefaultPlaceholder (JSONL) or
# EventSourceResponse (SSE).
if stream_item is not None and is_generator:
# Extract item type for JSONL or SSE streaming for
# generator endpoints when response_class is
# DefaultPlaceholder (JSONL) or EventSourceResponse
# (SSE).
# ServerSentEvent is excluded: it's a transport
# wrapper, not a data model, so it shouldn't feed
# into validation or OpenAPI schema generation.