API Docs¶
Invenio-Admin Flask extension.
-
class
invenio_admin.ext.
InvenioAdmin
(app=None, **kwargs)[source]¶ Invenio-Admin extension.
Invenio-Admin extension initialization.
Parameters: - app – The Flask application. (Default:
None
) - kwargs – Passed to
init_app()
.
-
init_app
(app, entry_point_group='invenio_admin.views', permission_factory=None, view_class_factory=<function protected_adminview_factory>, index_view_class=<class 'flask_admin.base.AdminIndexView'>)[source]¶ Flask application initialization.
Parameters: - app – The Flask application.
- entry_point_group – Name of entry point group to load
views/models from. (Default:
'invenio_admin.views'
) - permission_factory – Default permission factory to use when
protecting an admin view. (Default:
admin_permission_factory()
) - view_class_factory – Factory for creating admin view classes on
the fly. Used to protect admin views with authentication and
authorization. (Default:
protected_adminview_factory()
) - index_view_class – Specify administrative interface index page.
(Default:
flask_admin.base.AdminIndexView
) - kwargs – Passed to
flask_admin.base.Admin
.
Returns: Extension state.
- app – The Flask application. (Default:
Views¶
Admin view class factory for creating protected admin views on-the-fly.
Initialize menu before first request.
-
invenio_admin.views.
protected_adminview_factory
(base_class)[source]¶ Factory for creating protected admin view classes.
The factory will ensure that the admin view will check if a user is authenticated and has the necessary permissions (as defined by the permission factory). The factory creates a new class using the provided class as base class and overwrites
is_accessible()
andinaccessible_callback()
methods. Super is called for both methods, so the base class can implement further restrictions if needed.Parameters: base_class ( flask_admin.base.BaseView
) – Class to use as base class.Returns: Admin view class which provides authentication and authorization.
Forms¶
Flask-Admin form utilities.
Filters¶
Flask-Admin filter utilities.
-
class
invenio_admin.filters.
FilterConverter
[source]¶ Filter converter for dealing with UUIDs and variants.
Permissions¶
Permissions for Invenio-Admin.
-
invenio_admin.permissions.
action_admin_access
= Need(method='action', value='admin-access')¶ Define the action needed by the default permission factory.
-
invenio_admin.permissions.
admin_permission_factory
(admin_view)[source]¶ Default factory for creating a permission for an admin.
It tries to load a
invenio_access.permissions.Permission
instance if invenio_access is installed. Otherwise, it loads aflask_principal.Permission
instance.Parameters: admin_view – Instance of administration view which is currently being protected. Returns: Permission instance.