API Docs
Database management for Invenio.
-
class
invenio_db.ext.
InvenioDB
(app=None, **kwargs)[source]
Invenio database extension.
Extension initialization.
-
init_app
(app, **kwargs)[source]
Initialize application object.
-
init_db
(app, entry_point_group='invenio_db.models', **kwargs)[source]
Initialize Flask-SQLAlchemy extension.
-
init_versioning
(app, database, versioning_manager=None)[source]
Initialize the versioning support using SQLAlchemy-Continuum.
Shared database object for Invenio.
-
invenio_db.shared.
NAMING_CONVENTION
= {'ck': 'ck_%(table_name)s_%(constraint_name)s', 'fk': 'fk_%(table_name)s_%(column_0_name)s_%(referred_table_name)s', 'ix': 'ix_%(column_0_label)s', 'pk': 'pk_%(table_name)s', 'uq': 'uq_%(table_name)s_%(column_0_name)s'}
Configuration for constraint naming conventions.
-
class
invenio_db.shared.
SQLAlchemy
(app=None, use_native_unicode=True, session_options=None, metadata=None, query_class=<class 'flask_sqlalchemy.BaseQuery'>, model_class=<class 'flask_sqlalchemy.model.Model'>, engine_options=None)[source]
Implement or overide extension methods.
-
apply_driver_hacks
(app, info, options)[source]
Call before engine creation.
-
invenio_db.shared.
db
= <SQLAlchemy engine=None>
Shared database instance using Flask-SQLAlchemy extension.
This object is initialized during initialization of InvenioDB
extenstion that takes care about loading all entrypoints from key
invenio_db.models
.
-
invenio_db.shared.
do_sqlite_begin
(dbapi_connection)[source]
Ensure SQLite transaction are started properly.
For further details see “Foreign key support” sections on
https://docs.sqlalchemy.org/en/rel_1_0/dialects/sqlite.html#pysqlite-serializable # noqa
-
invenio_db.shared.
do_sqlite_connect
(dbapi_connection, connection_record)[source]
Ensure SQLite checks foreign key constraints.
For further details see “Foreign key support” sections on
https://docs.sqlalchemy.org/en/latest/dialects/sqlite.html#foreign-key-support
-
invenio_db.shared.
metadata
= MetaData(bind=None)
Default database metadata object holding associated schema constructs.
Click command-line interface for database management.
-
invenio_db.cli.
abort_if_false
(ctx, param, value)[source]
Abort command is value is False.