소스 검색

Fixes #4458: Remove custom admin site to avoid conflict with django-rq 2.3.0

Jeremy Stretch 5 년 전
부모
커밋
902b1b2c32
4개의 변경된 파일19개의 추가작업 그리고 29개의 파일을 삭제
  1. 6 7
      netbox/extras/admin.py
  2. 9 16
      netbox/netbox/admin.py
  3. 1 2
      netbox/secrets/admin.py
  4. 3 4
      netbox/users/admin.py

+ 6 - 7
netbox/extras/admin.py

@@ -1,7 +1,6 @@
 from django import forms
 from django import forms
 from django.contrib import admin
 from django.contrib import admin
 
 
-from netbox.admin import admin_site
 from utilities.forms import LaxURLField
 from utilities.forms import LaxURLField
 from .models import CustomField, CustomFieldChoice, CustomLink, Graph, ExportTemplate, ReportResult, Webhook
 from .models import CustomField, CustomFieldChoice, CustomLink, Graph, ExportTemplate, ReportResult, Webhook
 from .reports import get_report
 from .reports import get_report
@@ -35,7 +34,7 @@ class WebhookForm(forms.ModelForm):
             order_content_types(self.fields['obj_type'])
             order_content_types(self.fields['obj_type'])
 
 
 
 
-@admin.register(Webhook, site=admin_site)
+@admin.register(Webhook)
 class WebhookAdmin(admin.ModelAdmin):
 class WebhookAdmin(admin.ModelAdmin):
     list_display = [
     list_display = [
         'name', 'models', 'payload_url', 'http_content_type', 'enabled', 'type_create', 'type_update', 'type_delete',
         'name', 'models', 'payload_url', 'http_content_type', 'enabled', 'type_create', 'type_update', 'type_delete',
@@ -93,7 +92,7 @@ class CustomFieldChoiceAdmin(admin.TabularInline):
     extra = 5
     extra = 5
 
 
 
 
-@admin.register(CustomField, site=admin_site)
+@admin.register(CustomField)
 class CustomFieldAdmin(admin.ModelAdmin):
 class CustomFieldAdmin(admin.ModelAdmin):
     inlines = [CustomFieldChoiceAdmin]
     inlines = [CustomFieldChoiceAdmin]
     list_display = [
     list_display = [
@@ -135,7 +134,7 @@ class CustomLinkForm(forms.ModelForm):
         self.fields['content_type'].choices.insert(0, ('', '---------'))
         self.fields['content_type'].choices.insert(0, ('', '---------'))
 
 
 
 
-@admin.register(CustomLink, site=admin_site)
+@admin.register(CustomLink)
 class CustomLinkAdmin(admin.ModelAdmin):
 class CustomLinkAdmin(admin.ModelAdmin):
     list_display = [
     list_display = [
         'name', 'content_type', 'group_name', 'weight',
         'name', 'content_type', 'group_name', 'weight',
@@ -150,7 +149,7 @@ class CustomLinkAdmin(admin.ModelAdmin):
 # Graphs
 # Graphs
 #
 #
 
 
-@admin.register(Graph, site=admin_site)
+@admin.register(Graph)
 class GraphAdmin(admin.ModelAdmin):
 class GraphAdmin(admin.ModelAdmin):
     list_display = [
     list_display = [
         'name', 'type', 'weight', 'template_language', 'source',
         'name', 'type', 'weight', 'template_language', 'source',
@@ -178,7 +177,7 @@ class ExportTemplateForm(forms.ModelForm):
         self.fields['content_type'].choices.insert(0, ('', '---------'))
         self.fields['content_type'].choices.insert(0, ('', '---------'))
 
 
 
 
-@admin.register(ExportTemplate, site=admin_site)
+@admin.register(ExportTemplate)
 class ExportTemplateAdmin(admin.ModelAdmin):
 class ExportTemplateAdmin(admin.ModelAdmin):
     list_display = [
     list_display = [
         'name', 'content_type', 'description', 'mime_type', 'file_extension',
         'name', 'content_type', 'description', 'mime_type', 'file_extension',
@@ -193,7 +192,7 @@ class ExportTemplateAdmin(admin.ModelAdmin):
 # Reports
 # Reports
 #
 #
 
 
-@admin.register(ReportResult, site=admin_site)
+@admin.register(ReportResult)
 class ReportResultAdmin(admin.ModelAdmin):
 class ReportResultAdmin(admin.ModelAdmin):
     list_display = [
     list_display = [
         'report', 'active', 'created', 'user', 'passing',
         'report', 'active', 'created', 'user', 'passing',

+ 9 - 16
netbox/netbox/admin.py

@@ -1,20 +1,13 @@
 from django.conf import settings
 from django.conf import settings
-from django.contrib.admin import AdminSite
-from django.contrib.auth.admin import GroupAdmin, UserAdmin
-from django.contrib.auth.models import Group, User
+from django.contrib.admin import site as admin_site
+from taggit.models import Tag
 
 
 
 
-class NetBoxAdminSite(AdminSite):
-    """
-    Custom admin site
-    """
-    site_header = 'NetBox Administration'
-    site_title = 'NetBox'
-    site_url = '/{}'.format(settings.BASE_PATH)
+# Override default AdminSite attributes so we can avoid creating and
+# registering our own class
+admin_site.site_header = 'NetBox Administration'
+admin_site.site_title = 'NetBox'
+admin_site.site_url = '/{}'.format(settings.BASE_PATH)
 
 
-
-admin_site = NetBoxAdminSite(name='admin')
-
-# Register external models
-admin_site.register(Group, GroupAdmin)
-admin_site.register(User, UserAdmin)
+# Unregister the unused stock Tag model provided by django-taggit
+admin_site.unregister(Tag)

+ 1 - 2
netbox/secrets/admin.py

@@ -1,12 +1,11 @@
 from django.contrib import admin, messages
 from django.contrib import admin, messages
 from django.shortcuts import redirect, render
 from django.shortcuts import redirect, render
 
 
-from netbox.admin import admin_site
 from .forms import ActivateUserKeyForm
 from .forms import ActivateUserKeyForm
 from .models import UserKey
 from .models import UserKey
 
 
 
 
-@admin.register(UserKey, site=admin_site)
+@admin.register(UserKey)
 class UserKeyAdmin(admin.ModelAdmin):
 class UserKeyAdmin(admin.ModelAdmin):
     actions = ['activate_selected']
     actions = ['activate_selected']
     list_display = ['user', 'is_filled', 'is_active', 'created']
     list_display = ['user', 'is_filled', 'is_active', 'created']

+ 3 - 4
netbox/users/admin.py

@@ -3,14 +3,13 @@ from django.contrib import admin
 from django.contrib.auth.admin import UserAdmin as UserAdmin_
 from django.contrib.auth.admin import UserAdmin as UserAdmin_
 from django.contrib.auth.models import User
 from django.contrib.auth.models import User
 
 
-from netbox.admin import admin_site
 from .models import Token
 from .models import Token
 
 
 # Unregister the built-in UserAdmin so that we can use our custom admin view below
 # Unregister the built-in UserAdmin so that we can use our custom admin view below
-admin_site.unregister(User)
+admin.site.unregister(User)
 
 
 
 
-@admin.register(User, site=admin_site)
+@admin.register(User)
 class UserAdmin(UserAdmin_):
 class UserAdmin(UserAdmin_):
     list_display = [
     list_display = [
         'username', 'email', 'first_name', 'last_name', 'is_superuser', 'is_staff', 'is_active'
         'username', 'email', 'first_name', 'last_name', 'is_superuser', 'is_staff', 'is_active'
@@ -30,7 +29,7 @@ class TokenAdminForm(forms.ModelForm):
         model = Token
         model = Token
 
 
 
 
-@admin.register(Token, site=admin_site)
+@admin.register(Token)
 class TokenAdmin(admin.ModelAdmin):
 class TokenAdmin(admin.ModelAdmin):
     form = TokenAdminForm
     form = TokenAdminForm
     list_display = [
     list_display = [