skillbox/server/users/admin.py

52 lines
1.2 KiB
Python

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')
@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)