Flask-Admin


NameFlask-Admin JSON
Version 1.6.0 PyPI version JSON
download
home_pagehttps://github.com/flask-admin/flask-admin/
SummarySimple and extensible admin interface framework for Flask
upload_time2022-01-30 03:32:51
maintainer
docs_urlhttps://pythonhosted.org/Flask-Admin/
authorFlask-Admin team
requires_python>=3.6
licenseBSD
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Flask-Admin
===========

The project was recently moved into its own organization. Please update your
references to *git@github.com:flask-admin/flask-admin.git*.

.. image:: https://d322cqt584bo4o.cloudfront.net/flask-admin/localized.svg
	:target: https://crowdin.com/project/flask-admin

.. image:: https://github.com/flask-admin/flask-admin/actions/workflows/test.yaml/badge.svg
	:target: https://github.com/flask-admin/flask-admin/actions/workflows/test.yaml


Introduction
------------

Flask-Admin is a batteries-included, simple-to-use `Flask <http://flask.pocoo.org/>`_ extension that lets you
add admin interfaces to Flask applications. It is inspired by the *django-admin* package, but implemented in such
a way that the developer has total control of the look, feel and functionality of the resulting application.

Out-of-the-box, Flask-Admin plays nicely with various ORM's, including

- `SQLAlchemy <http://www.sqlalchemy.org/>`_,

- `MongoEngine <http://mongoengine.org/>`_,

- `pymongo <http://api.mongodb.org/python/current/>`_ and

- `Peewee <https://github.com/coleifer/peewee>`_.

It also boasts a simple file management interface and a `redis client <http://redis.io/>`_ console.

The biggest feature of Flask-Admin is flexibility. It aims to provide a set of simple tools that can be used for
building admin interfaces of any complexity. So, to start off with you can create a very simple application in no time,
with auto-generated CRUD-views for each of your models. But then you can go further and customize those views & forms
as the need arises.

Flask-Admin is an active project, well-tested and production ready.

Examples
--------
Several usage examples are included in the */examples* folder. Please add your own, or improve
on the existing examples, and submit a *pull-request*.

To run the examples in your local environment::

  1. Clone the repository::

        git clone https://github.com/flask-admin/flask-admin.git
        cd flask-admin

  2. Create and activate a virtual environment::

        virtualenv env -p python3
        source env/bin/activate

  3. Install requirements::

        pip install -r examples/sqla/requirements.txt

  4. Run the application::

        python examples/sqla/run_server.py

Documentation
-------------
Flask-Admin is extensively documented, you can find all of the documentation at `https://flask-admin.readthedocs.io/en/latest/ <https://flask-admin.readthedocs.io/en/latest/>`_.

The docs are auto-generated from the *.rst* files in the */doc* folder. So if you come across any errors, or
if you think of anything else that should be included, then please make the changes and submit them as a *pull-request*.

To build the docs in your local environment, from the project directory::

    tox -e docs-html

And if you want to preview any *.rst* snippets that you may want to contribute, go to `http://rst.ninjs.org/ <http://rst.ninjs.org/>`_.

Installation
------------
To install Flask-Admin, simply::

    pip install flask-admin

Or alternatively, you can download the repository and install manually by doing::

    git clone git@github.com:flask-admin/flask-admin.git
    cd flask-admin
    python setup.py install

Tests
-----
Test are run with *pytest*. If you are not familiar with this package you can get some more info from `their website <https://pytest.org/>`_.

To run the tests, from the project directory, simply::

    pip install -r requirements-dev.txt
    pytest

You should see output similar to::

    .............................................
    ----------------------------------------------------------------------
    Ran 102 tests in 13.132s

    OK

For all the tests to pass successfully, you'll need Postgres & MongoDB to be running locally. For Postgres::

    > psql postgres
    CREATE DATABASE flask_admin_test;
    \q

    > psql flask_admin_test
    CREATE EXTENSION postgis;
    CREATE EXTENSION hstore;

You can also run the tests on multiple environments using *tox*.

3rd Party Stuff
---------------

Flask-Admin is built with the help of `Bootstrap <http://getbootstrap.com/>`_,  `Select2 <https://github.com/ivaynberg/select2>`_
and `Bootswatch <http://bootswatch.com/>`_.

If you want to localize your application, install the `Flask-BabelEx <https://pypi.python.org/pypi/Flask-BabelEx>`_ package.

You can help improve Flask-Admin's translations through Crowdin: https://crowdin.com/project/flask-admin


Changelog
=========

1.6.0
-----

* Dropped Python 2 support
* WTForms 3.0 support
* Various fixes

1.5.8
-----

* SQLAlchemy 1.4.5+ compatibility fixes
* Redis CLI fixes

1.5.7
-----

* Bootstrap 4 support!
* Added hook for custom SQLAlchemy models initializers
* SQLAlchemy 1.4/2.0 compatibility fix

1.5.6
-----

* SQLAlchemy 1.3.6 compatibility fix
* Python 3.8 support

1.5.5
-----

* Werkzeug 1.0 compatibility fix
* Use fa-circle-o icon for unchecked booleans
* A few SQLAlchemy-related bug fixes

1.5.4
-----

* Fix display of inline x-editable boolean fields on list view
* Add support for several SQLAlchemy-Utils data types
* Support searching on SQLAlchemy hybrid properties
* Extra URL paramaters are now propagated to the next page when searching / filtering
* Add enum34 dependency when running on legacy Python version
* Update Mapbox API v1 URL format
* Update jQuery and moment dependencies in templates
* Fixed a datepicker issue, where only dates up to 2015 were showing up
* Updated Pillow dependency version

1.5.3
-----

* Fixed XSS vulnerability
* Support nested categories in the navbar menu
* SQLAlchemy
    * sort on multiple columns with `column_default_sort`
    * sort on related models in `column_sortable_list`
    * show searchable fields in search input's placeholder text
    * fix: inline model forms can now also be used for models with multiple primary keys
    * support for using mapped `column_property`
* Upgrade Leaflet and Leaflet.draw plugins, used for geoalchemy integration
* Specify `minimum_input_length` for ajax widget
* Peewee: support composite keys
* MongoEngine: when searching/filtering the input is now regarded as case-insensitive by default
* FileAdmin
    * handle special characters in filename
    * fix a bug with listing directories on Windows
    * avoid raising an exception when unknown sort parameter is encountered
* WTForms 3 support

1.5.2
-----

* Fixed XSS vulnerability
* Fixed Peewee support
* Added detail view column formatters
* Updated Flask-Login example to work with the newer version of the library
* Various SQLAlchemy-related fixes
* Various Windows related fixes for the file admin

1.5.1
-----

* Dropped Python 2.6 support
* Fixed SQLAlchemy >= 1.2 compatibility
* Fixed Pewee 3.0 compatibility
* Fixed max year for a combo date inline editor
* Lots of small bug fixes

1.5.0
-----

* Fixed CSRF generation logic for multi-process deployments
* Added WTForms >= 3.0 support
* Flask-Admin would not recursively save inline models, allowing arbitrary nesting
* Added configuration properties that allow injection of additional CSS and JS dependencies into templates without overriding them
* SQLAlchemy backend
  - Updated hybrid property detection using new SQLAlchemy APIs
  - Added support for association proxies
  - Added support for remote hybrid properties filters
  - Added support for ARRAY column type
* Localization-related fixes
* MongoEngine backend is now properly formats model labels
* Improved Google App Engine support:
  - Added TextProperty, KeyProperty and SelectField support
  - Added support for form_args, excluded_columns, page_size and after_model_update
* Fixed URL generation with localized named filters
* FileAdmin has Bootstrap 2 support now
* Geoalchemy fixes
  - Use Google Places (by default) for place search
* Updated translations
* Bug fixes

1.4.2
-----
* Small bug fix release. Fixes regression that prevented usage of "virtual" columns with a custom formatter.

1.4.1
-----

* Official Python 3.5 support
* Customizable row actions
* Tablib support (exporting to XLS, XLSX, CSV, etc)
* Updated external dependencies (jQuery, x-editable, etc)
* Added settings that allows exceptions to be raised on view errors
* Bug fixes

1.4.0
-----

* Updated and reworked documentation
* FileAdmin went through minor refactoring and now supports remote file systems. Comes with the new, optional, AWS S3 file management interface
* Configurable CSV export for model views
* Added overridable URL generation logic. Allows using custom URLs with parameters for administrative views
* Added column_display_actions to ModelView control visibility of the action column without overriding the template
* Added support for the latest MongoEngine
* New SecureForm base class for easier CSRF validation
* Lots of translation-related fixes and updated translations
* Bug fixes

1.3.0
-----

* New feature: Edit models in the list view in a popup
* New feature: Read-only model details view
* Fixed XSS in column_editable_list values
* Improved navigation consistency in model create and edit views
* Ability to choose page size in model list view
* Updated client-side dependencies (jQuery, Select2, etc)
* Updated documentation and examples
* Updated translations
* Bug fixes



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/flask-admin/flask-admin/",
    "name": "Flask-Admin",
    "maintainer": "",
    "docs_url": "https://pythonhosted.org/Flask-Admin/",
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "",
    "author": "Flask-Admin team",
    "author_email": "serge.koval+github@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/d4/cb/2f0b363a818ca756eb9931a5af3ce216e497b6a4edc8caf130310dd1e36c/Flask-Admin-1.6.0.tar.gz",
    "platform": "any",
    "description": "Flask-Admin\n===========\n\nThe project was recently moved into its own organization. Please update your\nreferences to *git@github.com:flask-admin/flask-admin.git*.\n\n.. image:: https://d322cqt584bo4o.cloudfront.net/flask-admin/localized.svg\n\t:target: https://crowdin.com/project/flask-admin\n\n.. image:: https://github.com/flask-admin/flask-admin/actions/workflows/test.yaml/badge.svg\n\t:target: https://github.com/flask-admin/flask-admin/actions/workflows/test.yaml\n\n\nIntroduction\n------------\n\nFlask-Admin is a batteries-included, simple-to-use `Flask <http://flask.pocoo.org/>`_ extension that lets you\nadd admin interfaces to Flask applications. It is inspired by the *django-admin* package, but implemented in such\na way that the developer has total control of the look, feel and functionality of the resulting application.\n\nOut-of-the-box, Flask-Admin plays nicely with various ORM's, including\n\n- `SQLAlchemy <http://www.sqlalchemy.org/>`_,\n\n- `MongoEngine <http://mongoengine.org/>`_,\n\n- `pymongo <http://api.mongodb.org/python/current/>`_ and\n\n- `Peewee <https://github.com/coleifer/peewee>`_.\n\nIt also boasts a simple file management interface and a `redis client <http://redis.io/>`_ console.\n\nThe biggest feature of Flask-Admin is flexibility. It aims to provide a set of simple tools that can be used for\nbuilding admin interfaces of any complexity. So, to start off with you can create a very simple application in no time,\nwith auto-generated CRUD-views for each of your models. But then you can go further and customize those views & forms\nas the need arises.\n\nFlask-Admin is an active project, well-tested and production ready.\n\nExamples\n--------\nSeveral usage examples are included in the */examples* folder. Please add your own, or improve\non the existing examples, and submit a *pull-request*.\n\nTo run the examples in your local environment::\n\n  1. Clone the repository::\n\n        git clone https://github.com/flask-admin/flask-admin.git\n        cd flask-admin\n\n  2. Create and activate a virtual environment::\n\n        virtualenv env -p python3\n        source env/bin/activate\n\n  3. Install requirements::\n\n        pip install -r examples/sqla/requirements.txt\n\n  4. Run the application::\n\n        python examples/sqla/run_server.py\n\nDocumentation\n-------------\nFlask-Admin is extensively documented, you can find all of the documentation at `https://flask-admin.readthedocs.io/en/latest/ <https://flask-admin.readthedocs.io/en/latest/>`_.\n\nThe docs are auto-generated from the *.rst* files in the */doc* folder. So if you come across any errors, or\nif you think of anything else that should be included, then please make the changes and submit them as a *pull-request*.\n\nTo build the docs in your local environment, from the project directory::\n\n    tox -e docs-html\n\nAnd if you want to preview any *.rst* snippets that you may want to contribute, go to `http://rst.ninjs.org/ <http://rst.ninjs.org/>`_.\n\nInstallation\n------------\nTo install Flask-Admin, simply::\n\n    pip install flask-admin\n\nOr alternatively, you can download the repository and install manually by doing::\n\n    git clone git@github.com:flask-admin/flask-admin.git\n    cd flask-admin\n    python setup.py install\n\nTests\n-----\nTest are run with *pytest*. If you are not familiar with this package you can get some more info from `their website <https://pytest.org/>`_.\n\nTo run the tests, from the project directory, simply::\n\n    pip install -r requirements-dev.txt\n    pytest\n\nYou should see output similar to::\n\n    .............................................\n    ----------------------------------------------------------------------\n    Ran 102 tests in 13.132s\n\n    OK\n\nFor all the tests to pass successfully, you'll need Postgres & MongoDB to be running locally. For Postgres::\n\n    > psql postgres\n    CREATE DATABASE flask_admin_test;\n    \\q\n\n    > psql flask_admin_test\n    CREATE EXTENSION postgis;\n    CREATE EXTENSION hstore;\n\nYou can also run the tests on multiple environments using *tox*.\n\n3rd Party Stuff\n---------------\n\nFlask-Admin is built with the help of `Bootstrap <http://getbootstrap.com/>`_,  `Select2 <https://github.com/ivaynberg/select2>`_\nand `Bootswatch <http://bootswatch.com/>`_.\n\nIf you want to localize your application, install the `Flask-BabelEx <https://pypi.python.org/pypi/Flask-BabelEx>`_ package.\n\nYou can help improve Flask-Admin's translations through Crowdin: https://crowdin.com/project/flask-admin\n\n\nChangelog\n=========\n\n1.6.0\n-----\n\n* Dropped Python 2 support\n* WTForms 3.0 support\n* Various fixes\n\n1.5.8\n-----\n\n* SQLAlchemy 1.4.5+ compatibility fixes\n* Redis CLI fixes\n\n1.5.7\n-----\n\n* Bootstrap 4 support!\n* Added hook for custom SQLAlchemy models initializers\n* SQLAlchemy 1.4/2.0 compatibility fix\n\n1.5.6\n-----\n\n* SQLAlchemy 1.3.6 compatibility fix\n* Python 3.8 support\n\n1.5.5\n-----\n\n* Werkzeug 1.0 compatibility fix\n* Use fa-circle-o icon for unchecked booleans\n* A few SQLAlchemy-related bug fixes\n\n1.5.4\n-----\n\n* Fix display of inline x-editable boolean fields on list view\n* Add support for several SQLAlchemy-Utils data types\n* Support searching on SQLAlchemy hybrid properties\n* Extra URL paramaters are now propagated to the next page when searching / filtering\n* Add enum34 dependency when running on legacy Python version\n* Update Mapbox API v1 URL format\n* Update jQuery and moment dependencies in templates\n* Fixed a datepicker issue, where only dates up to 2015 were showing up\n* Updated Pillow dependency version\n\n1.5.3\n-----\n\n* Fixed XSS vulnerability\n* Support nested categories in the navbar menu\n* SQLAlchemy\n    * sort on multiple columns with `column_default_sort`\n    * sort on related models in `column_sortable_list`\n    * show searchable fields in search input's placeholder text\n    * fix: inline model forms can now also be used for models with multiple primary keys\n    * support for using mapped `column_property`\n* Upgrade Leaflet and Leaflet.draw plugins, used for geoalchemy integration\n* Specify `minimum_input_length` for ajax widget\n* Peewee: support composite keys\n* MongoEngine: when searching/filtering the input is now regarded as case-insensitive by default\n* FileAdmin\n    * handle special characters in filename\n    * fix a bug with listing directories on Windows\n    * avoid raising an exception when unknown sort parameter is encountered\n* WTForms 3 support\n\n1.5.2\n-----\n\n* Fixed XSS vulnerability\n* Fixed Peewee support\n* Added detail view column formatters\n* Updated Flask-Login example to work with the newer version of the library\n* Various SQLAlchemy-related fixes\n* Various Windows related fixes for the file admin\n\n1.5.1\n-----\n\n* Dropped Python 2.6 support\n* Fixed SQLAlchemy >= 1.2 compatibility\n* Fixed Pewee 3.0 compatibility\n* Fixed max year for a combo date inline editor\n* Lots of small bug fixes\n\n1.5.0\n-----\n\n* Fixed CSRF generation logic for multi-process deployments\n* Added WTForms >= 3.0 support\n* Flask-Admin would not recursively save inline models, allowing arbitrary nesting\n* Added configuration properties that allow injection of additional CSS and JS dependencies into templates without overriding them\n* SQLAlchemy backend\n  - Updated hybrid property detection using new SQLAlchemy APIs\n  - Added support for association proxies\n  - Added support for remote hybrid properties filters\n  - Added support for ARRAY column type\n* Localization-related fixes\n* MongoEngine backend is now properly formats model labels\n* Improved Google App Engine support:\n  - Added TextProperty, KeyProperty and SelectField support\n  - Added support for form_args, excluded_columns, page_size and after_model_update\n* Fixed URL generation with localized named filters\n* FileAdmin has Bootstrap 2 support now\n* Geoalchemy fixes\n  - Use Google Places (by default) for place search\n* Updated translations\n* Bug fixes\n\n1.4.2\n-----\n* Small bug fix release. Fixes regression that prevented usage of \"virtual\" columns with a custom formatter.\n\n1.4.1\n-----\n\n* Official Python 3.5 support\n* Customizable row actions\n* Tablib support (exporting to XLS, XLSX, CSV, etc)\n* Updated external dependencies (jQuery, x-editable, etc)\n* Added settings that allows exceptions to be raised on view errors\n* Bug fixes\n\n1.4.0\n-----\n\n* Updated and reworked documentation\n* FileAdmin went through minor refactoring and now supports remote file systems. Comes with the new, optional, AWS S3 file management interface\n* Configurable CSV export for model views\n* Added overridable URL generation logic. Allows using custom URLs with parameters for administrative views\n* Added column_display_actions to ModelView control visibility of the action column without overriding the template\n* Added support for the latest MongoEngine\n* New SecureForm base class for easier CSRF validation\n* Lots of translation-related fixes and updated translations\n* Bug fixes\n\n1.3.0\n-----\n\n* New feature: Edit models in the list view in a popup\n* New feature: Read-only model details view\n* Fixed XSS in column_editable_list values\n* Improved navigation consistency in model create and edit views\n* Ability to choose page size in model list view\n* Updated client-side dependencies (jQuery, Select2, etc)\n* Updated documentation and examples\n* Updated translations\n* Bug fixes\n\n\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "Simple and extensible admin interface framework for Flask",
    "version": "1.6.0",
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "9bd66b94962f0126ab7c3977d7bebfb4",
                "sha256": "424ffc79b7b0dfff051555686ea12e86e48dffacac14beaa319fb4502ac40988"
            },
            "downloads": -1,
            "filename": "Flask-Admin-1.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "9bd66b94962f0126ab7c3977d7bebfb4",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 6644630,
            "upload_time": "2022-01-30T03:32:51",
            "upload_time_iso_8601": "2022-01-30T03:32:51.086623Z",
            "url": "https://files.pythonhosted.org/packages/d4/cb/2f0b363a818ca756eb9931a5af3ce216e497b6a4edc8caf130310dd1e36c/Flask-Admin-1.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-01-30 03:32:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "flask-admin",
    "github_project": "flask-admin",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "flask-admin"
}
        
Elapsed time: 0.01262s