/
Codename-Nik
/
WebApp
Обзор
Документация
Войти
/
Codename-Nik
/
WebApp
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
backend/api/admin.py
64 строки
2 KB
Nikolay Pokhodnya
first commit
03 ноя 2025, 19:47
03 ноя 2025, 19:47
a9fbdee
Код
Авторство
О чём код?
from django.contrib import admin from django.contrib.auth.admin import UserAdmin from .models import CustomUser, Project, Task, Comment # Register your models here. class CustomUserAdmin(UserAdmin): list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff', 'created_at') list_filter = ('is_staff', 'is_superuser', 'is_active', 'created_at') search_fields = ('username', 'email', 'first_name', 'last_name') ordering = ('-created_at',) fieldsets = UserAdmin.fieldsets + ( ('Дополнительная информация', { 'fields': ('bio', 'avatar', 'created_at', 'updated_at') }), ) readonly_fields = ('created_at', 'updated_at') class ProjectAdmin(admin.ModelAdmin): list_display = ('name', 'owner', 'member_count', 'task_count', 'created_at') list_filter = ('created_at', 'owner') search_fields = ('name', 'description') filter_horizontal = ('members',) readonly_fields = ('created_at', 'updated_at') def member_count(self, obj): return obj.members.count() member_count.short_description = 'Участников' def task_count(self, obj): return obj.tasks.count() task_count.short_description = 'Задач' class TaskAdmin(admin.ModelAdmin): list_display = ('title', 'project', 'status', 'priority', 'assigned_to', 'created_by', 'due_date', 'created_at') list_filter = ('status', 'priority', 'project', 'created_at') search_fields = ('title', 'description') readonly_fields = ('created_at', 'updated_at') fieldsets = ( ('Основная информация', { 'fields': ('title', 'description', 'project', 'status', 'priority') }), ('Назначение и даты', { 'fields': ('assigned_to', 'created_by', 'due_date') }), ('Системная информация', { 'fields': ('created_at', 'updated_at'), 'classes': ('collapse',) }), ) class CommentAdmin(admin.ModelAdmin): list_display = ('author', 'task', 'created_at') list_filter = ('created_at', 'author') search_fields = ('content', 'author__username', 'task__title') readonly_fields = ('created_at', 'updated_at') admin.site.register(CustomUser, CustomUserAdmin) admin.site.register(Project, ProjectAdmin) admin.site.register(Task, TaskAdmin) admin.site.register(Comment, CommentAdmin)