from django.contrib import admin from .models import Issue, Grouping, TurningPoint from .forms import IssueAdminForm class GroupingInline(admin.TabularInline): model = Grouping extra = 0 exclude = ['project'] readonly_fields = [ 'grouping_key', ] class TurningPointInline(admin.TabularInline): model = TurningPoint extra = 0 exclude = ['project'] fields = [ "kind", "timestamp", "user", "triggering_event", "metadata", "comment", ] readonly_fields = [ "user", # readonly because it avoid thinking about well-implemented select-boxes "triggering_event", # readonly because it avoid thinking about well-implemented select-boxes "metadata", # readonly to avoid a big textbox "comment", # readonly to avoid a big textbox ] @admin.register(Issue) class IssueAdmin(admin.ModelAdmin): form = IssueAdminForm fields = [ 'project', 'friendly_id', 'calculated_type', 'calculated_value', 'last_seen', 'first_seen', 'is_resolved', 'fixed_at', 'events_at', 'is_muted', 'unmute_on_volume_based_conditions', 'unmute_after', 'digested_event_count', ] inlines = [ GroupingInline, TurningPointInline, ] list_display = [ "title", "project", "digested_event_count", ] list_filter = [ "project", ] exclude = ["events"] readonly_fields = [ 'project', 'friendly_id', 'calculated_type', 'calculated_value', 'digested_event_count', ]