SQLAlchemy support for Fresco
Adding SQLAlchemy to your application
Use fresco_sqlalchemy.SQLAlchemy to configure your application for use with SQLAlchemy. By default this reads database connection configuration from app, and adds WSGI middleware into your application to manage SQLAlchemy sessions:
from fresco import FrescoApp
from fresco_sqlalchemy import SQLAlchemy
# Create a new Fresco app
app = FrescoApp()
# Connection info is loaded from your application configuration
app.options.SQLALCHEMY = {
'default': 'driver://user:password@localhost/database',
}
sqlalchemy = SQLAlchemy(app)
You can call your configuration variable something else if you prefer:
app.options.DATABASES = {
'default': 'driver://user:password@localhost/database',
}
sqlalchemy = SQLAlchemy(app, options_key='DATABASES')
Or skip this step entirely and provide database configuration directly to the constructor:
sqlalchemy = SQLAlchemy(
app,
databases={'default': 'driver://user:password@localhost/database',})
Accessing sessions
You can access sqlalchemy sessions directly on the SQLAlchemy object:
sqlalchemy = SQLAlchemy(app) session = sqlalchemy.getsession() session.query(...)
Or via fresco.context:
from fresco import context session = context.sqlalchemy.default session.query(...)
Multiple connection support
You can specify as many database connection URLs as you want:
app.options.SQLALCHEMY = {
'staging': 'driver://user:password@localhost/staging_db',
'production': 'driver://user:password@localhost/production_db',
}
These can be accessed by name, using getsession:
sqlalchemy = SQLAlchemy(app)
sqlalchemy.getsession('staging')
Or from fresco.context:
default_session = context.sqlalchemy.staging cms_session = context.sqlalchemy.production
Engine configuration
Extra arguments to the SQLAlchemy constructor are passed to SQLAlchemy’s create_engine function. This makes it possible to specify options such as echo=True to log all SQL queries produced by SQLAlchemy:
sqlalchemy = SQLAlchemy(app, echo=True)
0.1 (released 2016-06-30)
Initial release
Metadata
Release files for fresco-sqlalchemy 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| fresco-sqlalchemy-0.1.tar.gz | 4.9 kB | Without provenance | Details for fresco-sqlalchemy-0.1.tar.gz |
Release files / fresco-sqlalchemy-0.1.tar.gz
| Download URL | fresco-sqlalchemy-0.1.tar.gz |
|---|---|
| Size | 4.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7e852801e8f6f6edcf3d93bc11531ee68ded49c33dac7f074448a2dca33ba776
|
|
BLAKE2b-256 checksum How to use checksums |
0d2e4593294c1ff7c951c66d3cfaf8145621d3b38be12e1f5d55111b50697ebf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for fresco-sqlalchemy 0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.