From 69c7595bf51225fb5b1887ac984d59a3128a224c Mon Sep 17 00:00:00 2001 From: Jaap Roes Date: Mon, 15 Apr 2019 11:25:52 +0200 Subject: [PATCH 1/2] Replace calls to admin.site.register with @admin.register decorator --- blogs/admin.py | 12 ++++-------- boxes/admin.py | 4 +--- community/admin.py | 8 ++------ companies/admin.py | 3 +-- downloads/admin.py | 5 ++--- events/admin.py | 7 +++---- jobs/admin.py | 12 ++++-------- minutes/admin.py | 3 +-- nominations/admin.py | 8 +++----- pages/admin.py | 3 +-- sponsors/admin.py | 3 +-- successstories/admin.py | 5 ++--- users/admin.py | 5 ++--- work_groups/admin.py | 2 +- 14 files changed, 28 insertions(+), 52 deletions(-) diff --git a/blogs/admin.py b/blogs/admin.py index 24a389f3b..ef8fac4af 100644 --- a/blogs/admin.py +++ b/blogs/admin.py @@ -7,15 +7,15 @@ from .models import BlogEntry, Contributor, Translation, Feed, FeedAggregate +@admin.register(Translation) class TranslationAdmin(ContentManageableModelAdmin): list_display = ['name', '_display_url'] def _display_url(self, obj): return format_html('{0}'.format(obj.url)) -admin.site.register(Translation, TranslationAdmin) - +@admin.register(Contributor) class ContributorAdmin(ContentManageableModelAdmin): list_display = ['_display_name'] @@ -25,9 +25,8 @@ def _display_name(self, obj): else: return "{} (PK#{})".format(obj.user.username, obj.user.pk) -admin.site.register(Contributor, ContributorAdmin) - +@admin.register(BlogEntry) class BlogEntryAdmin(admin.ModelAdmin): list_display = ['title', 'pub_date'] date_hierarchy = 'pub_date' @@ -38,14 +37,11 @@ def sync_new_entries(self, request, queryset): self.message_user(request, "Blog entries updated.") sync_new_entries.short_description = "Sync new blog entries" - -admin.site.register(BlogEntry, BlogEntryAdmin) +@admin.register(FeedAggregate) class FeedAggregateAdmin(admin.ModelAdmin): list_display = ['name', 'slug', 'description'] prepopulated_fields = {'slug': ('name',)} -admin.site.register(FeedAggregate, FeedAggregateAdmin) - admin.site.register(Feed) diff --git a/boxes/admin.py b/boxes/admin.py index df5f7bdfc..d71e7810a 100644 --- a/boxes/admin.py +++ b/boxes/admin.py @@ -3,8 +3,6 @@ from .models import Box +@admin.register(Box) class BoxAdmin(ContentManageableModelAdmin): ordering = ('label', ) - - -admin.site.register(Box, BoxAdmin) diff --git a/community/admin.py b/community/admin.py index f12f8c5d9..b9023ac00 100644 --- a/community/admin.py +++ b/community/admin.py @@ -19,6 +19,7 @@ class VideoInline(ContentManageableStackedInline): extra = 0 +@admin.register(Post) class PostAdmin(ContentManageableModelAdmin): date_hierarchy = 'created' list_display = ['__str__', 'status', 'media_type'] @@ -30,12 +31,7 @@ class PostAdmin(ContentManageableModelAdmin): ] +@admin.register(Link, Photo, Video) class PostTypeAdmin(ContentManageableModelAdmin): date_hierarchy = 'created' raw_id_fields = ['post'] - - -admin.site.register(Post, PostAdmin) -admin.site.register(Link, PostTypeAdmin) -admin.site.register(Photo, PostTypeAdmin) -admin.site.register(Video, PostTypeAdmin) diff --git a/companies/admin.py b/companies/admin.py index 81f632cae..f5e2da58f 100644 --- a/companies/admin.py +++ b/companies/admin.py @@ -5,9 +5,8 @@ from .models import Company +@admin.register(Company) class CompanyAdmin(NameSlugAdmin): search_fields = ['name'] list_display = ['__str__', 'contact', 'email'] ordering = ['-pk'] - -admin.site.register(Company, CompanyAdmin) diff --git a/downloads/admin.py b/downloads/admin.py index 42e05760e..d32f97b71 100644 --- a/downloads/admin.py +++ b/downloads/admin.py @@ -4,6 +4,7 @@ from cms.admin import ContentManageableModelAdmin, ContentManageableStackedInline +@admin.register(OS) class OSAdmin(ContentManageableModelAdmin): model = OS prepopulated_fields = {"slug": ("name",)} @@ -14,6 +15,7 @@ class ReleaseFileInline(ContentManageableStackedInline): extra = 0 +@admin.register(Release) class ReleaseAdmin(ContentManageableModelAdmin): inlines = [ReleaseFileInline] prepopulated_fields = {"slug": ("name",)} @@ -23,6 +25,3 @@ class ReleaseAdmin(ContentManageableModelAdmin): list_filter = ['version', 'is_published', 'show_on_download_page'] search_fields = ['name', 'slug'] ordering = ['-release_date'] - -admin.site.register(OS, OSAdmin) -admin.site.register(Release, ReleaseAdmin) diff --git a/events/admin.py b/events/admin.py index 0f9b0b516..d355e7a95 100644 --- a/events/admin.py +++ b/events/admin.py @@ -29,6 +29,7 @@ class AlarmInline(admin.StackedInline): extra = 0 +@admin.register(Event) class EventAdmin(ContentManageableModelAdmin): inlines = [OccurringRuleInline, RecurringRuleInline, AlarmInline] list_display = ['__str__', 'calendar', 'featured'] @@ -37,14 +38,12 @@ class EventAdmin(ContentManageableModelAdmin): search_fields = ['title'] +@admin.register(EventLocation) class EventLocationAdmin(admin.ModelAdmin): list_filter = ['calendar'] admin.site.register(Calendar, CalendarAdmin) admin.site.register(EventCategory, NameSlugAdmin) -admin.site.register(Event, EventAdmin) -admin.site.register(OccurringRule) -admin.site.register(RecurringRule) admin.site.register(Alarm, ContentManageableModelAdmin) -admin.site.register(EventLocation, EventLocationAdmin) +admin.site.register((OccurringRule, RecurringRule)) diff --git a/jobs/admin.py b/jobs/admin.py index de5814f00..f24e8b077 100644 --- a/jobs/admin.py +++ b/jobs/admin.py @@ -4,6 +4,7 @@ from cms.admin import NameSlugAdmin, ContentManageableModelAdmin +@admin.register(Job) class JobAdmin(ContentManageableModelAdmin): date_hierarchy = 'created' filter_horizontal = ['job_types'] @@ -13,26 +14,21 @@ class JobAdmin(ContentManageableModelAdmin): search_fields = ['id', 'job_title'] +@admin.register(JobType) class JobTypeAdmin(NameSlugAdmin): list_display = ['__str__', 'active'] list_filter = ['active'] ordering = ('-active', 'name') -admin.site.register(JobType, JobTypeAdmin) - +@admin.register(JobCategory) class JobCategoryAdmin(NameSlugAdmin): list_display = ['__str__', 'active'] list_filter = ['active'] ordering = ('-active', 'name') +@admin.register(JobReviewComment) class JobReviewCommentAdmin(ContentManageableModelAdmin): list_display = ['__str__', 'job'] ordering = ('-created',) - -admin.site.register(JobCategory, JobCategoryAdmin) - -admin.site.register(Job, JobAdmin) - -admin.site.register(JobReviewComment, JobReviewCommentAdmin) diff --git a/minutes/admin.py b/minutes/admin.py index a37b7de57..63f7fdd4d 100644 --- a/minutes/admin.py +++ b/minutes/admin.py @@ -4,6 +4,7 @@ from cms.admin import ContentManageableModelAdmin +@admin.register(Minutes) class MinutesAdmin(ContentManageableModelAdmin): date_hierarchy = 'date' @@ -14,5 +15,3 @@ def get_list_filter(self, request): def get_list_display(self, request): fields = list(super().get_list_display(request)) return fields + ['is_published'] - -admin.site.register(Minutes, MinutesAdmin) diff --git a/nominations/admin.py b/nominations/admin.py index c300e8a54..92c426431 100644 --- a/nominations/admin.py +++ b/nominations/admin.py @@ -3,10 +3,12 @@ from nominations.models import (Election, Nominee, Nomination) +@admin.register(Election) class ElectionAdmin(admin.ModelAdmin): readonly_fields = ("slug",) +@admin.register(Nominee) class NomineeAdmin(admin.ModelAdmin): raw_id_fields = ("user",) list_display = ("__str__", "election", "accepted", "approved") @@ -14,12 +16,8 @@ class NomineeAdmin(admin.ModelAdmin): readonly_fields = ("slug",) +@admin.register(Nomination) class NominationAdmin(admin.ModelAdmin): raw_id_fields = ("nominee", "nominator") list_display = ("__str__", "election", "accepted", "approved") list_filter = ("election", "accepted", "approved") - - -admin.site.register(Election, ElectionAdmin) -admin.site.register(Nominee, NomineeAdmin) -admin.site.register(Nomination, NominationAdmin) diff --git a/pages/admin.py b/pages/admin.py index 11aff9d9d..7b701de72 100644 --- a/pages/admin.py +++ b/pages/admin.py @@ -61,6 +61,7 @@ def queryset(self, request, queryset): return queryset.filter(path__startswith=self.value()) +@admin.register(Page) class PageAdmin(ContentManageableModelAdmin): search_fields = ['title', 'path'] list_display = ('get_title', 'path', 'is_published',) @@ -71,5 +72,3 @@ class PageAdmin(ContentManageableModelAdmin): ('Advanced options', {'classes': ('collapse',), 'fields': ('template_name',)}), ] save_as = True - -admin.site.register(Page, PageAdmin) diff --git a/sponsors/admin.py b/sponsors/admin.py index 096c69b1c..4507435ab 100644 --- a/sponsors/admin.py +++ b/sponsors/admin.py @@ -4,6 +4,7 @@ from cms.admin import ContentManageableModelAdmin +@admin.register(Sponsor) class SponsorAdmin(ContentManageableModelAdmin): raw_id_fields = ['company'] @@ -14,5 +15,3 @@ def get_list_filter(self, request): def get_list_display(self, request): fields = list(super().get_list_display(request)) return fields + ['is_published'] - -admin.site.register(Sponsor, SponsorAdmin) diff --git a/successstories/admin.py b/successstories/admin.py index 9729c5d5a..e4e4bef55 100644 --- a/successstories/admin.py +++ b/successstories/admin.py @@ -5,10 +5,12 @@ from cms.admin import ContentManageableModelAdmin, NameSlugAdmin +@admin.register(StoryCategory) class StoryCategoryAdmin(NameSlugAdmin): prepopulated_fields = {'slug': ('name',)} +@admin.register(Story) class StoryAdmin(ContentManageableModelAdmin): prepopulated_fields = {'slug': ('name',)} raw_id_fields = ['category'] @@ -25,6 +27,3 @@ def get_list_display(self, request): def show_link(self, obj): return format_html('\U0001F517'.format(obj.get_absolute_url())) show_link.short_description = 'View on site' - -admin.site.register(StoryCategory, StoryCategoryAdmin) -admin.site.register(Story, StoryAdmin) diff --git a/users/admin.py b/users/admin.py index c501efadc..d0cdecdc4 100644 --- a/users/admin.py +++ b/users/admin.py @@ -24,6 +24,7 @@ class ApiKeyInline(TastypieApiKeyInline): readonly_fields = ('key', 'created') +@admin.register(User) class UserAdmin(BaseUserAdmin): inlines = BaseUserAdmin.inlines + [ApiKeyInline, MembershipInline] fieldsets = ( @@ -48,6 +49,7 @@ def full_name(self, obj): full_name.short_description = 'Name' +@admin.register(Membership) class MembershipAdmin(admin.ModelAdmin): actions = [export_csv] list_display = ( @@ -65,9 +67,6 @@ class ApiKeyAdmin(admin.ModelAdmin): date_hierarchy = 'created' -admin.site.register(User, UserAdmin) -admin.site.register(Membership, MembershipAdmin) - try: admin.site.unregister(ApiKey) except admin.sites.NotRegistered: diff --git a/work_groups/admin.py b/work_groups/admin.py index 1b4c95b23..e17e300b3 100644 --- a/work_groups/admin.py +++ b/work_groups/admin.py @@ -5,6 +5,7 @@ from .models import WorkGroup +@admin.register(WorkGroup) class WorkGroupAdmin(ContentManageableModelAdmin): search_fields = ['name', 'slug', 'url', 'short_description', 'purpose'] list_display = ('name', 'active', 'approved') @@ -33,4 +34,3 @@ class WorkGroupAdmin(ContentManageableModelAdmin): 'members', )}) ] -admin.site.register(WorkGroup, WorkGroupAdmin) From 8e3056515ef9d1759d750196d25eb7e437e6c150 Mon Sep 17 00:00:00 2001 From: Jaap Roes Date: Mon, 15 Apr 2019 11:26:50 +0200 Subject: [PATCH 2/2] Remove unnecessary subclass --- events/admin.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/events/admin.py b/events/admin.py index d355e7a95..df8ac278f 100644 --- a/events/admin.py +++ b/events/admin.py @@ -9,10 +9,6 @@ class EventInline(admin.StackedInline): extra = 0 -class CalendarAdmin(ContentManageableModelAdmin): - pass - - class OccurringRuleInline(admin.StackedInline): model = OccurringRule extra = 0 @@ -43,7 +39,6 @@ class EventLocationAdmin(admin.ModelAdmin): list_filter = ['calendar'] -admin.site.register(Calendar, CalendarAdmin) admin.site.register(EventCategory, NameSlugAdmin) -admin.site.register(Alarm, ContentManageableModelAdmin) admin.site.register((OccurringRule, RecurringRule)) +admin.site.register((Alarm, Calendar), ContentManageableModelAdmin)