Creating a Base ModelAdmin for a Project

Is it common practice to create a “base” MyModelAdmin for a project and have all your ModelAdmin classes inherit from it, like this:

class MyModelAdmin(admin.ModelAdmin):
    list_max_show_all = 500
    list_per_page = 25

    class Media:
        js = (
            settings.STATIC_URL + 'js/admin.js'
        css = {
             'all': (settings.STATIC_URL + 'css/admin.css',)

class BookAdmin(MyModelAdmin):
    model = Book

class AuthorAdmin(MyModelAdmin):
    model = Author

# This also inherits from django.contrib.auth.admin.UserAdmin
class CustomUserAdmin(MyModelAdmin, UserAdmin):
    model = CustomUser

This makes a lot of sense to me, but I haven’t seen any examples of it anywhere.

Yes, it’s a great idea that I tend to use. Same with Model, Form, and other classes you might use subclasses of frequently.