from django.contrib import admin from django.contrib.auth.admin import UserAdmin from .models import * def make_archived(modeladmin, request, queryset): queryset.update(is_archived=True) make_archived.short_description = "Отправить в архив" def make_not_archived(modeladmin, request, queryset): queryset.update(is_archived=False) make_not_archived.short_description = "Убрать из архива" class AddMessageInline(admin.TabularInline): model = AddMessage extra = 0 class Calladmin(admin.ModelAdmin): list_display = ('title', 'category', 'status', 'created', 'author') list_editable = ('status',) list_filter = ('created','status', 'is_archived', 'category') search_fields = ['title', 'message'] autocomplete_fields = ('author',) inlines = [AddMessageInline] actions = [make_archived, make_not_archived] class CustomUserAdmin(UserAdmin): model = CustomUser fieldsets = list(UserAdmin.fieldsets) + [('Дополнительные поля', {'fields': ('company',)})] list_filter = ('company', 'is_staff', 'is_active') class AddMessageAdmin(admin.ModelAdmin): list_display = ('created', 'id', 'author', 'message', 'file') list_display_links = ('created', 'id') raw_id_fields = ('call', 'author') autocomplete_fields = ('author',) search_fields = ['message', 'author'] list_filter = ('created', 'author') admin.site.register(Call, Calladmin) admin.site.register(Category) admin.site.register(Status) admin.site.register(Company) admin.site.register(CustomUser, CustomUserAdmin) admin.site.register(AddMessage, AddMessageAdmin)