from django.contrib import admin from django.contrib.auth.admin import UserAdmin from users.forms import CustomUserCreationForm, CustomUserChangeForm from .models import User, SchoolClass, Role, UserRole class SchoolClassInline(admin.TabularInline): model = SchoolClass.users.through class RoleInline(admin.TabularInline): model = UserRole @admin.register(SchoolClass) class SchoolClassAdmin(admin.ModelAdmin): list_display = ('id', 'name', 'year') list_filter = ('year',) @admin.register(Role) class SchoolRoleAdmin(admin.ModelAdmin): list_display = ('name',) list_filter = ('name',) @admin.register(UserRole) class UserSchoolRoleAdmin(admin.ModelAdmin): list_display = ('user', 'role') # list_filter = ('role__school',) readonly_fields = [] # search_fields = ('user__email', 'user__username') class CustomUserAdmin(UserAdmin): add_form = CustomUserCreationForm form = CustomUserChangeForm model = User list_display = ('username', 'first_name', 'last_name',) inlines = [ SchoolClassInline, RoleInline, ] # fieldsets = UserAdmin.fieldsets + ( # (None, {'fields': ('school_classes',)}), # ) admin.site.register(User, CustomUserAdmin)