from django.contrib.admin import AdminSite from django.contrib.admin.models import LogEntry from django.contrib.sites.admin import SiteAdmin from django.contrib.sites.models import Site # 导入各个应用的admin模块和模型 from accounts.admin import * from blog.admin import * from blog.models import * from comments.admin import * from comments.models import * from djangoblog.logentryadmin import LogEntryAdmin from oauth.admin import * from oauth.models import * from owntracks.admin import * from owntracks.models import * from servermanager.admin import * from servermanager.models import * class DjangoBlogAdminSite(AdminSite): """自定义DjangoBlog管理站点""" # 管理站点头部标题 site_header = 'djangoblog administration' # 管理站点页面标题 site_title = 'djangoblog site admin' def __init__(self, name='admin'): """初始化管理站点""" super().__init__(name) def has_permission(self, request): """检查用户权限:只允许超级用户访问""" return request.user.is_superuser # 以下是注释掉的URL配置示例,可用于添加自定义管理页面 # def get_urls(self): # urls = super().get_urls() # from django.urls import path # from blog.views import refresh_memcache # # my_urls = [ # path('refresh/', self.admin_view(refresh_memcache), name="refresh"), # ] # return urls + my_urls # 创建DjangoBlog管理站点实例 admin_site = DjangoBlogAdminSite(name='admin') # 注册博客相关的模型和管理类 admin_site.register(Article, ArticlelAdmin) admin_site.register(Category, CategoryAdmin) admin_site.register(Tag, TagAdmin) admin_site.register(Links, LinksAdmin) admin_site.register(SideBar, SideBarAdmin) admin_site.register(BlogSettings, BlogSettingsAdmin) # 注册服务器管理相关的模型 admin_site.register(commands, CommandsAdmin) admin_site.register(EmailSendLog, EmailSendLogAdmin) # 注册用户账户模型 admin_site.register(BlogUser, BlogUserAdmin) # 注册评论模型 admin_site.register(Comment, CommentAdmin) # 注册OAuth认证相关模型 admin_site.register(OAuthUser, OAuthUserAdmin) admin_site.register(OAuthConfig, OAuthConfigAdmin) # 注册OwnTracks位置跟踪模型 admin_site.register(OwnTrackLog, OwnTrackLogsAdmin) # 注册Django站点模型 admin_site.register(Site, SiteAdmin) # 注册Django日志条目模型 admin_site.register(LogEntry, LogEntryAdmin)