Flask¶
Flask extension providing request-scoped session management, automatic transaction handling, and async adapter support via the portal pattern.
Plugin¶
- class sqlspec.extensions.flask.SQLSpecPlugin[source]¶
Bases:
objectFlask extension for SQLSpec database integration.
Provides request-scoped session management, automatic transaction handling, and async adapter support via portal pattern.
- init_app(app)[source]¶
Initialize Flask application with SQLSpec.
Validates configuration, creates portal if needed, creates pools, and registers hooks.
- Parameters:
- Raises:
ImproperConfigurationError -- If extension already registered or keys not unique.
- Return type:
- get_session(key=None)[source]¶
Get or create database session for current request.
Sessions are cached per request for consistency.
State¶
- class sqlspec.extensions.flask.FlaskConfigState[source]¶
Bases:
objectInternal state for each database configuration in Flask extension.
Holds configuration, state keys, commit settings, and transaction logic.
- should_rollback(status_code)[source]¶
Determine if HTTP status code should trigger rollback.
In autocommit modes, anything that doesn't commit should rollback.
- __init__(config, connection_key, session_key, commit_mode, extra_commit_statuses, extra_rollback_statuses, is_async, disable_di, enable_correlation_middleware=False, correlation_header='x-request-id', correlation_headers=None, auto_trace_headers=True, enable_sqlcommenter_middleware=True)¶