The great thing about the Django Admin is that - because it was actually part of the Django itself - there is a whole ecosystem of extensions, add-ons, skins etc for it.<p>Any attempts to replace it for Django would have an uphill struggle for that reason alone.<p>This is one side-effect of an opinionated framework - the provision of a default choice facilitates cooperation and prevents fragmentation.<p>(We recently picked up a Pyramid project and I was rather surprised how big the impact was of the extra choice. Simply in terms of searching for answers to questions - we often had to find an answer from someone who was using the same combination of parts that we were using. And figuring out how to do x often fell into the gaps in the docs between two components and was therefore harder to figure out)
> Yes, default Bootstrap skin looks boring and unprofessional,<p>Sigh... bootstrap didn't get where it is by looking unprofessional.<p>I also don't understand wanting every admin interface one comes across to be a special snowflake, the opposite of what should be the case. We've known for at least 30 years (Apple HIG) that a standardized look and feel is a benefit to users, not a detriment. Not to mention dev maintainability.<p>I suppose billable hours decrease when reinventing the wheel is no longer necessary.
From the documentation at <a href="http://flask-admin.readthedocs.org/en/latest/" rel="nofollow">http://flask-admin.readthedocs.org/en/latest/</a><p>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.
I especially like, that I can use Flask-Admin with Peewee ORM - <a href="https://peewee.readthedocs.org/en/latest/" rel="nofollow">https://peewee.readthedocs.org/en/latest/</a> - instead of SQLAlchemy, because I feel so much more comfortable with Peewee when doing small CRUD projects. SQLAlchemy is a lot more powerful, but the learning curve (at least for me) is steeper than with Peewee. Flask-Admin is a beautiful piece of software to get Flask backends set up quickly.
Getting the admin-interface correct is one of those holy grails. The problem I typically run into is adding complex wizards or features outside of the standard crud stack.<p>When I'm investigating an out of the box admin interface I'm _less concerned_ about how they handle CRUD; that's the easy part. Really I need to know how they handle things that go well beyond their stack.<p>For example, in one application we need to create events for people (like google calendar). You need to be able to search for people, show the system what they already have assigned at that time and allow you to choose times that are best for everyone in the list. This has been designed as a multi-step wizard and it works great but it was a ton of custom code. Looking at the online documentation of flask I'm not sure how I would go about integrating something like this.
I have the feeling that flask has been neglected for a while. The last release 0.10.1 was on Jun 14, 2013. The mastermind behind Flask, Armin Ronacher, is more into Rust nowadays.
I once started a big codebase on Flask and had to move away from it because of some really strange bugs and bad interplay of officially approved packages. The idea behind Flask is nice and there are great plugins out there like Flask-Admin but I don't trust that code base anymore. Also I found a weird bug that kept Flask from answering more than about 500 requests per second and nothing happened since then. For me it was the right decision to jump to Go.
Nice. Definitely something that I miss when using Express for a UI-centric project. Seemed like only the "kitchen sink" frameworks (Rails, Django) had decent CRUD/admin UI options.
Any comment on the comparison with Flask-AppBuilder <a href="https://github.com/dpgaspar/Flask-AppBuilder" rel="nofollow">https://github.com/dpgaspar/Flask-AppBuilder</a> ? I've already made projects with the last one and I think is very nice. Are there any deep diferences, advantages or something I should take into account? e.g. github contributors ;)
I recently discovered Flask-Admin via Airflow. I'm quite interested if anyone has any experience with it (or recommendations for alternatives).<p>For this I'm prioritising development speed over just about anything else, and I'm comfortable in most mainstream languages.
> Campus Bubble is a single page app with React.js on a frontend and Python services on a backend. We use Flask, SQLAlchemy, Tornado (SockJS push notifications), PostgreSQL, Redis - a pretty standard Flask stack.<p>Can anyone explain how Flask and Tornado could be used together?
fask-admin (or any decent CRUD interface) is one of my favourite parts of developing a new application backend. The amount of functionality you can achieve without touching HTML/JS is amazing.<p>Goes a long way in keeping the application modular and maintainable.
Maybe lead with that it is a CRUD package for the Python framework Flask rather than expecting readers to be familiar with the Python ecosystem enough to be aware of what it is?
I'm still more in favor of Django. There is more to learn about it, but almost all Flask projects that get beyond the weekend-project stage end up reimplementing stuff that is in Django, or working around that lack.<p>The interplay between ORM, migrations, admin, CRUD, API, Forms, etc is just beautiful. Doing that with SQLAlchemy and the like is possible, but may create a bigger mess than starting out with a slightly less lightweight Django. project.
This looks interesting! I just started playing around with this a bit, and maybe I'm missing something, but it looks like the ModelViews only implement create, update, and delete? Why no read?