from django.contrib import admin from .models import ( Article, ArticleCollect, ArticleShare, ArticleComment, ArticleLike, ArticleType, Column, Magazine, MagazineCategory, Organize, OrganizeCategory, Professor, RuleBand, Specialty, StarRule, Subject, WorkGroup, WorkGroupMembership, WorkGroupTerm, ) @admin.register(Column) class ColumnAdmin(admin.ModelAdmin): list_display = ("id", "name", "position", "sort", "path", "is_disabled") list_filter = ("position", "is_disabled") search_fields = ("name",) @admin.register(Subject) class SubjectAdmin(admin.ModelAdmin): list_display = ("id", "name", "parent", "sort", "is_disabled") list_filter = ("is_disabled",) search_fields = ("name",) @admin.register(OrganizeCategory) class OrganizeCategoryAdmin(admin.ModelAdmin): list_display = ("id", "name", "parent", "sort", "is_disabled") list_filter = ("is_disabled",) search_fields = ("name",) @admin.register(MagazineCategory) class MagazineCategoryAdmin(admin.ModelAdmin): list_display = ("id", "name", "parent", "sort", "is_disabled") list_filter = ("is_disabled",) search_fields = ("name",) @admin.register(ArticleType) class ArticleTypeAdmin(admin.ModelAdmin): list_display = ("id", "code", "name", "sort", "is_disabled") list_filter = ("is_disabled",) search_fields = ("name", "code", "note") @admin.register(Organize) class OrganizeAdmin(admin.ModelAdmin): list_display = ("id", "name", "category", "rank", "is_disabled") search_fields = ("name",) @admin.register(Magazine) class MagazineAdmin(admin.ModelAdmin): list_display = ("id", "name", "category", "is_disabled") search_fields = ("name",) filter_horizontal = ("subjects",) class RuleBandInline(admin.TabularInline): model = RuleBand extra = 1 @admin.register(StarRule) class StarRuleAdmin(admin.ModelAdmin): list_display = ("id", "name", "year", "is_disabled") inlines = [RuleBandInline] @admin.register(WorkGroup) class WorkGroupAdmin(admin.ModelAdmin): list_display = ("id", "name", "parent", "sort", "is_disabled") list_filter = ("is_disabled",) search_fields = ("name",) @admin.register(WorkGroupTerm) class WorkGroupTermAdmin(admin.ModelAdmin): list_display = ( "id", "workgroup", "name", "parent", "start_year", "end_year", "is_current", "is_disabled", ) list_filter = ("is_current", "is_disabled", "workgroup") search_fields = ("name", "workgroup__name") class WorkGroupMembershipInline(admin.TabularInline): model = WorkGroupMembership extra = 1 @admin.register(Professor) class ProfessorAdmin(admin.ModelAdmin): list_display = ("id", "name", "role", "job", "is_disabled") search_fields = ("name",) inlines = [WorkGroupMembershipInline] @admin.register(Specialty) class SpecialtyAdmin(admin.ModelAdmin): list_display = ("id", "name", "position", "is_disabled") search_fields = ("name",) @admin.register(Article) class ArticleAdmin(admin.ModelAdmin): list_display = ("id", "title", "type", "year", "score", "rank", "is_disabled") list_filter = ("type", "year", "is_disabled") search_fields = ("title", "serial_number") filter_horizontal = ("organizes", "magazines", "subjects") @admin.register(ArticleComment) class ArticleCommentAdmin(admin.ModelAdmin): list_display = ("id", "article", "member", "star", "review_status", "created_at") list_filter = ("review_status",) search_fields = ("content", "member__name", "article__title") @admin.register(ArticleLike) class ArticleLikeAdmin(admin.ModelAdmin): list_display = ("id", "article", "member", "created_at") search_fields = ("member__name", "member__phone", "article__title") @admin.register(ArticleCollect) class ArticleCollectAdmin(admin.ModelAdmin): list_display = ("id", "article", "member", "created_at") search_fields = ("member__name", "member__phone", "article__title") @admin.register(ArticleShare) class ArticleShareAdmin(admin.ModelAdmin): list_display = ("id", "article", "member", "visitor_key", "created_at") search_fields = ("member__name", "member__phone", "visitor_key", "article__title")