from django.contrib import admin from .models import ApiKey, Attachment, Collection, CollectionSection, Item, Kanban, Tag, Team, TeamInvite, TeamMembership, UserInvite, UserPreference, Workspace, WorkspaceMembership class CollectionSectionInline(admin.TabularInline): model = CollectionSection fk_name = 'collection' extra = 0 @admin.register(Collection) class CollectionAdmin(admin.ModelAdmin): list_display = ('title', 'mode', 'visibility', 'team', 'owner', 'updated_at') list_filter = ('mode', 'visibility', 'team') filter_horizontal = ('filter_tags',) inlines = [CollectionSectionInline] class AttachmentInline(admin.TabularInline): model = Attachment extra = 0 @admin.register(Item) class ItemAdmin(admin.ModelAdmin): list_display = ('id', 'kind', 'visibility', 'team', 'is_done', 'owner', 'created_at') list_filter = ('kind', 'visibility', 'team', 'is_done', 'tags') search_fields = ('content', 'url') inlines = [AttachmentInline] @admin.register(ApiKey) class ApiKeyAdmin(admin.ModelAdmin): list_display = ('name', 'owner', 'is_active', 'created_at') filter_horizontal = ('tags',) admin.site.register(Tag) admin.site.register(UserInvite) admin.site.register(Team) admin.site.register(TeamMembership) admin.site.register(TeamInvite) admin.site.register(Kanban) admin.site.register(UserPreference) admin.site.register(Workspace) admin.site.register(WorkspaceMembership)