Skip to main content

Simple and extensible admin interface framework for Flask

Project description

Flask-Admin

https://travis-ci.org/mrjoes/flask-admin.png?branch=master

Introduction

Flask-Admin is a batteries-included, simple-to-use Flask 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

It also boasts a simple file management interface and a redis client console.

Several usage examples are included in the /examples folder. Feel free to add your own examples, or improve some of the existing ones, and submit them as a pull-request.

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.

Documentation

Flask-Admin is extensively documented, you can find all of the documentation at http://readthedocs.org/docs/flask-admin.

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

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:mrjoes/flask-admin.git
cd flask-admin
python setup.py install

Tests

Test are run with nose. If you are not familiar with this package you can get some more info from their website.

To run the tests, simply:

pip install nose

and then:

cd flask-admin
nosetests

You should see output such as:

----------------------------------------------------------------------
Ran 41 tests in 2.092s

Please note that you will need to install some additional dependencies in order for all of the tests to be executed successfully.

3rd Party Stuff

Flask-Admin is built with the help of Twitter Bootstrap and Select2.

If you want to localize your application, install the Flask-BabelEx package.

Changelog

1.0.7

Full change log and feature walkthrough can be found here.

Highlights:

  • Python 3 support

  • AJAX-based foreign-key data loading for all backends

  • New, optional, rule-based form rendering engine

  • MongoEngine fixes and features: GridFS support, nested subdocument configuration and much more

  • Greatly improved and more configurable inline models

  • New WTForms fields and widgets

  • form_extra_columns allows adding custom columns to the form declaratively

  • Redis cli

  • SQLAlchemy backend can handle inherited models with multiple PKs

  • Lots of bug fixes

1.0.6

  • Model views now support default sorting order

  • Model type/column formatters now accept additional view parameter

  • is_visible for administrative views

  • Model views have after_model_change method that can be overridden

  • In model views, get_query was split into get_count_query and get_query

  • Bootstrap 2.3.1

  • Bulk deletes go through delete_model

  • Flask-Admin no longer uses floating navigation bar

  • Translations: French, Persian (Farsi), Chinese (Simplified/Traditional), Czech

  • Bug fixes

1.0.5

  • SQLAlchemy 0.8 support

  • Choices and PostgreSQL Enum field type support

  • Flask-BabelEx will be used to localize administrative interface

  • Simple text file editor

  • File admin has additional hooks: rename, edit, upload, etc

  • Simple text file editor

  • External links in menu

  • Column descriptions

  • Possibility to override master template

  • Reworked templates. New ‘layout’ sample with completely different administrative UI

  • Ability to customize wtforms widget rendering through form_widget_args property

  • German translation (WIP)

  • Updated documentation

  • Lots of bug fixes

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Flask-Admin-1.0.7.tar.gz (330.6 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page