diff --git a/src/DjangoBlog/admin_site.py b/src/DjangoBlog/admin_site.py new file mode 100644 index 0000000..b253332 --- /dev/null +++ b/src/DjangoBlog/admin_site.py @@ -0,0 +1,82 @@ +#yyb 导入Django管理站点相关模块 +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 + +#yyb 导入各个应用的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): + """#yyb 自定义DjangoBlog管理站点""" + + #yyb 管理站点头部标题 + site_header = 'djangoblog administration' + #yyb 管理站点页面标题 + site_title = 'djangoblog site admin' + + def __init__(self, name='admin'): + """#yyb 初始化管理站点""" + super().__init__(name) + + def has_permission(self, request): + """#yyb 检查用户权限:只允许超级用户访问""" + return request.user.is_superuser + + #yyb 以下是注释掉的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 + + +#yyb 创建DjangoBlog管理站点实例 +admin_site = DjangoBlogAdminSite(name='admin') + +#yyb 注册博客相关的模型和管理类 +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) + +#yyb 注册服务器管理相关的模型 +admin_site.register(commands, CommandsAdmin) +admin_site.register(EmailSendLog, EmailSendLogAdmin) + +#yyb 注册用户账户模型 +admin_site.register(BlogUser, BlogUserAdmin) + +#yyb 注册评论模型 +admin_site.register(Comment, CommentAdmin) + +#yyb 注册OAuth认证相关模型 +admin_site.register(OAuthUser, OAuthUserAdmin) +admin_site.register(OAuthConfig, OAuthConfigAdmin) + +#yyb 注册OwnTracks位置跟踪模型 +admin_site.register(OwnTrackLog, OwnTrackLogsAdmin) + +#yyb 注册Django站点模型 +admin_site.register(Site, SiteAdmin) + +#yyb 注册Django日志条目模型 +admin_site.register(LogEntry, LogEntryAdmin) \ No newline at end of file