litestar-pydotorg
  • Litestar
  • Python.org
/

Learn

  • Getting Started
    • Installation
    • Quickstart
  • Guides
    • Development Guide
    • Contribution Guide
    • Testing Guide
    • Debugging Guide
    • API Usage Guide
    • Authentication Guide
    • Feature Flags
    • Configuration Guide
    • Deployment Guide
    • Docker Guide
    • Troubleshooting Guide
  • Cookbook
    • Domain Patterns
    • Authentication Recipes
    • Database Recipes
    • Testing Recipes

Reference

  • API Reference
    • Core Infrastructure
      • Authentication
      • Caching
      • Database
      • Email
      • Exceptions
      • Feature Flags
      • RSS/Atom Feeds
      • iCalendar
      • Logging
      • Middleware
      • OpenAPI
      • Rate Limiting
      • Search
      • Security
      • Background Worker
    • Domain Modules
      • About
      • Admin
      • banners
      • blogs
      • Code Samples
      • community
      • Documentation
      • downloads
      • events
      • jobs
      • Mailing Lists
      • Minutes
      • Nominations
      • pages
      • Search
      • sponsors
      • SQLAdmin
      • Success Stories
      • users
      • Work Groups
    • Library Utilities
    • Background Tasks
    • Configuration
    • Application Entry Point
  • Architecture
    • Litestar Python.org Architecture
    • Database Schema Design
    • Domain Models Reference
    • Litestar Python.org Quick Start Guide
    • API Tags Documentation Index
    • Rate Limiting Architecture Design
    • ADR-001: Use Litestar as Web Framework
    • ADR-002: Use SAQ for Background Task Processing
  • Changelog

Project

  • GitHub

On this page

  • Module Contents
  • Controllers
    • SearchAPIController
      • path
      • tags
      • search_content
      • autocomplete
      • after_request
      • after_response
      • before_request
      • cache_control
      • dependencies
      • dto
      • etag
      • exception_handlers
      • guards
      • include_in_schema
      • middleware
      • opt
      • owner
      • parameters
      • request_class
      • request_max_body_size
      • response_class
      • response_cookies
      • response_headers
      • return_dto
      • security
      • signature_namespace
      • signature_types
      • type_decoders
      • type_encoders
      • websocket_class
    • SearchRenderController
      • path
      • include_in_schema
      • search_page
      • search_results
      • after_request
      • after_response
      • before_request
      • cache_control
      • dependencies
      • dto
      • etag
      • exception_handlers
      • guards
      • middleware
      • opt
      • owner
      • parameters
      • request_class
      • request_max_body_size
      • response_class
      • response_cookies
      • response_headers
      • return_dto
      • security
      • signature_namespace
      • signature_types
      • tags
      • type_decoders
      • type_encoders
      • websocket_class
  • Dependencies
  1. litestar-pydotorg /
  2. API Reference /
  3. Domain Modules /
  4. Search

Search¶

Site-wide search functionality.

Module Contents¶

Controllers¶

Search domain controllers.

class SearchAPIController[source]¶

Bases: Controller

API controller for search operations.

path: str¶

A path fragment for the controller.

All route handlers under the controller will have the fragment appended to them. If not set it defaults to /.

tags: Sequence[str] | None¶

A sequence of string tags that will be appended to the schema of all route handlers under the controller.

search_content(fn) = <litestar.handlers.http_handlers.decorators.post object>¶
autocomplete(fn) = <litestar.handlers.http_handlers.decorators.get object>¶
after_request: AfterRequestHookHandler | None¶

A sync or async function executed before a Request is passed to any route handler.

If this function returns a value, the request will not reach the route handler, and instead this value will be used.

after_response: AfterResponseHookHandler | None¶

A sync or async function called after the response has been awaited.

It receives the Request instance and should not return any values.

before_request: BeforeRequestHookHandler | None¶

A sync or async function called immediately before calling the route handler.

It receives the Request instance and any non-None return value is used for the response, bypassing the route handler.

cache_control: CacheControlHeader | None¶

A CacheControlHeader header to add to route handlers of this controller.

Can be overridden by route handlers.

dependencies: Dependencies | None¶

A string keyed dictionary of dependency Provider instances.

dto: type[AbstractDTO] | None | EmptyType¶

AbstractDTO to use for (de)serializing and validation of request data.

etag: ETag | None¶

An etag header of type ETag to add to route handlers of this controller.

Can be overridden by route handlers.

exception_handlers: ExceptionHandlersMap | None¶

A map of handler functions to status codes and/or exception types.

guards: Sequence[Guard] | None¶

A sequence of Guard callables.

include_in_schema: bool | EmptyType¶

A boolean flag dictating whether the route handler should be documented in the OpenAPI schema

middleware: Sequence[Middleware] | None¶

A sequence of Middleware.

opt: Mapping[str, Any] | None¶

A string key mapping of arbitrary values that can be accessed in Guards or wherever you have access to Request or ASGI Scope.

owner: Router¶

The Router or Litestar app that owns the controller.

This value is set internally by Litestar and it should not be set when subclassing the controller.

parameters: ParametersMap | None¶

A mapping of Parameter definitions available to all application paths.

request_class: type[Request] | None¶

A custom subclass of Request to be used as the default request for all route handlers under the controller.

request_max_body_size: int | None | EmptyType¶

Maximum allowed size of the request body in bytes. If this size is exceeded, a ‘413 - Request Entity Too Large’ error response is returned.

response_class: type[Response] | None¶

A custom subclass of Response to be used as the default response for all route handlers under the controller.

response_cookies: ResponseCookies | None¶

A list of Cookie instances.

response_headers: ResponseHeaders | None¶

A string keyed dictionary mapping ResponseHeader instances.

return_dto: type[AbstractDTO] | None | EmptyType¶

AbstractDTO to use for serializing outbound response data.

security: Sequence[SecurityRequirement] | None¶

A sequence of dictionaries that to the schema of all route handlers under the controller.

signature_namespace: dict[str, Any]¶

A mapping of names to types for use in forward reference resolution during signature modelling.

signature_types: Sequence[Any]¶

A sequence of types for use in forward reference resolution during signature modelling.

These types will be added to the signature namespace using their __name__ attribute.

type_decoders: TypeDecodersSequence | None¶

A sequence of tuples, each composed of a predicate testing for type identity and a msgspec hook for deserialization.

type_encoders: TypeEncodersMap | None¶

A mapping of types to callables that transform them into types supported for serialization.

websocket_class: type[WebSocket] | None¶

A custom subclass of WebSocket to be used as the default websocket for all route handlers under the controller.

class SearchRenderController[source]¶

Bases: Controller

Controller for rendering search pages.

path: str¶

A path fragment for the controller.

All route handlers under the controller will have the fragment appended to them. If not set it defaults to /.

include_in_schema: bool | EmptyType¶

A boolean flag dictating whether the route handler should be documented in the OpenAPI schema

search_page(fn) = <litestar.handlers.http_handlers.decorators.get object>¶
search_results(fn) = <litestar.handlers.http_handlers.decorators.get object>¶
after_request: AfterRequestHookHandler | None¶

A sync or async function executed before a Request is passed to any route handler.

If this function returns a value, the request will not reach the route handler, and instead this value will be used.

after_response: AfterResponseHookHandler | None¶

A sync or async function called after the response has been awaited.

It receives the Request instance and should not return any values.

before_request: BeforeRequestHookHandler | None¶

A sync or async function called immediately before calling the route handler.

It receives the Request instance and any non-None return value is used for the response, bypassing the route handler.

cache_control: CacheControlHeader | None¶

A CacheControlHeader header to add to route handlers of this controller.

Can be overridden by route handlers.

dependencies: Dependencies | None¶

A string keyed dictionary of dependency Provider instances.

dto: type[AbstractDTO] | None | EmptyType¶

AbstractDTO to use for (de)serializing and validation of request data.

etag: ETag | None¶

An etag header of type ETag to add to route handlers of this controller.

Can be overridden by route handlers.

exception_handlers: ExceptionHandlersMap | None¶

A map of handler functions to status codes and/or exception types.

guards: Sequence[Guard] | None¶

A sequence of Guard callables.

middleware: Sequence[Middleware] | None¶

A sequence of Middleware.

opt: Mapping[str, Any] | None¶

A string key mapping of arbitrary values that can be accessed in Guards or wherever you have access to Request or ASGI Scope.

owner: Router¶

The Router or Litestar app that owns the controller.

This value is set internally by Litestar and it should not be set when subclassing the controller.

parameters: ParametersMap | None¶

A mapping of Parameter definitions available to all application paths.

request_class: type[Request] | None¶

A custom subclass of Request to be used as the default request for all route handlers under the controller.

request_max_body_size: int | None | EmptyType¶

Maximum allowed size of the request body in bytes. If this size is exceeded, a ‘413 - Request Entity Too Large’ error response is returned.

response_class: type[Response] | None¶

A custom subclass of Response to be used as the default response for all route handlers under the controller.

response_cookies: ResponseCookies | None¶

A list of Cookie instances.

response_headers: ResponseHeaders | None¶

A string keyed dictionary mapping ResponseHeader instances.

return_dto: type[AbstractDTO] | None | EmptyType¶

AbstractDTO to use for serializing outbound response data.

security: Sequence[SecurityRequirement] | None¶

A sequence of dictionaries that to the schema of all route handlers under the controller.

signature_namespace: dict[str, Any]¶

A mapping of names to types for use in forward reference resolution during signature modelling.

signature_types: Sequence[Any]¶

A sequence of types for use in forward reference resolution during signature modelling.

These types will be added to the signature namespace using their __name__ attribute.

tags: Sequence[str] | None¶

A sequence of string tags that will be appended to the schema of all route handlers under the controller.

type_decoders: TypeDecodersSequence | None¶

A sequence of tuples, each composed of a predicate testing for type identity and a msgspec hook for deserialization.

type_encoders: TypeEncodersMap | None¶

A mapping of types to callables that transform them into types supported for serialization.

websocket_class: type[WebSocket] | None¶

A custom subclass of WebSocket to be used as the default websocket for all route handlers under the controller.

Dependencies¶

Previous
pages
Next
sponsors

2025, Jacob Coffee

Made with Sphinx and Shibuya theme.