[PYTHON] I compared Django's admin screens

Friday I / O! At Wamuu Co., Ltd., every Friday is a day when we work on what we are interested in and output the results in some way.

Introduction

This time, I compared Django's admin interface libraries. If you look at here, there are a lot of libraries, but I picked up four famous ones and compared them.

The source code can be found in the following repositories. There is a branch for each management screen, so please switch and check.

https://github.com/odoku/django-admins

Django

This is the default management screen. The design was redesigned with Django 1.9, so it's relatively modern. I will. The Admin extension library is created based on the default administration screen, so it is actually the most customizable. However, it is undeniable that it is a little troublesome. ..

Login

01_login.png

Dashboard

02_dashboard.png

List

03_list.png

Edit

04_edit.png

django-jet

Github: https://github.com/geex-arts/django-jet Document: http://jet.readthedocs.io/en/latest/ Demo: http://demo.jet.geex-arts.com/admin/login/?next=/admin/

This time we have the most powerful management screen! It looks pretty, you can customize the dashboard, and basically it feels good if you use it.

Login

01_login.png

Dashboard

Widgets can be moved by dragging. Show your uncle a cool dashboard and you'll be happy.

By the way, you can save any URL as a bookmark in BOOKMARKS at the bottom of the left menu. It may be good to save the page you edit often or the URL of Google Spreadsheet. If you have a request to create an additional page on the management screen, I'll manage to do it.

02_dashboard.png

List

The list is also neat and clean.

03_list.png

Edit

The margins of the elements are delicate, but it's pretty pretty.

It is nice that the item of ManyToManyField is automatically widget of incremental search.

04_edit.png

django-jet seems to tab inline elements on its own!

05_edit_inline.png

django-suit

Github: https://github.com/darklow/django-suit Document: http://django-suit.readthedocs.io/en/develop/ Demo: http://djangosuit.com/admin/

This also has a beautiful appearance! But! Please note that paid for commercial use. However, it is customizable enough to match it.

Login

01_login.png

Dashboard

It seems that the dashboard cannot be customized. ..

02_dashboard.png

List

I haven't implemented it this time, but it has a function that allows you to sort elements on the list page. I love sorting uncles, so I think this is a high point!

03_list.png

Edit

This is also not implemented this time, but there is Ability to cut out arbitrary items to tab page!

I just noticed that the button such as Save is not displayed. .. After checking, it seems that the cause was that the width of the Wysiwyg editor was fixed. Please be assured that it will be displayed properly for normal use!

04_edit.png

django-grappelli

Github: https://github.com/sehmaschine/django-grappelli Document: https://django-grappelli.readthedocs.io/en/latest/

It looks a little old-fashioned, but it's a normally beautiful UI management screen. grappelli can also be customized quite well, so it may be good for people who want to play with it by themselves. Unlike django-suit, you can use it for free!

Login

01_login.png

Dashboard

grappelli also has a Dashboard customization feature. This is not like adding a widget, it seems to be a type that implements it.

02_dashboard.png

List

You can't customize the list very much [https://django-grappelli.readthedocs.io/en/latest/customization.html#changelist-templates). ..

03_list.png

Edit

Sorting inline elements (https://django-grappelli.readthedocs.io/en/latest/customization.html#inline-sortables) Autocomplete, etc. It feels like you can reach the itch! !!

04_edit.png

django-material

Github: https://github.com/viewflow/django-material Document: http://docs.viewflow.io/material_admin.html Demo: http://demo.viewflow.io/admin/login/?next=/admin/

It looks like a management screen created using Materialzie! To be honest, it's not extensible, but it's limited functionality, so it's a subtle place, It's rather interesting because it looks like a Django admin screen.

Login

Strong claim w

01_login.png

Dashboard

Something like Icon can be attached! I thought this was a little good.

02_dashboard.png

List

I feel Google.

03_list.png

Edit

Unfortunately the Wysiwyg editor isn't working! !! !! !! It may be cool if I adjust something, but I'm exhausted. .. It's nice to have StackedInline lined up in 3 columns, but I'm a little worried about what happens with horizontally long elements.

04_edit.png

Summary

How was it! When I wrote the article, I thought that the screenshots didn't make much sense, but I thought it would be nice if the atmosphere could be conveyed. Personally, I think it's django-jet if you want to make it quickly, and django-grappelli if you want to customize it firmly. However, there are various useful management screen-like libraries in Django, but it is also important whether they work properly, so After all, it may be the default admin screen that is safe.

Anyway, Django's management screen is convenient, so let's all use it ◎

Recommended Posts

I compared Django's admin screens
I compared Python more-itertools 2.5 → 2.6
I wanted to modify Django's admin site a bit
I compared Java and Python!
I compared blade and jinja2
I compared Qiskit and Blueqat (beginner)
Run scripts with Django's admin command
I personally compared Java and Ruby