diff --git a/pt_site/admin.py b/pt_site/admin.py index 832b228..50bedb8 100644 --- a/pt_site/admin.py +++ b/pt_site/admin.py @@ -255,7 +255,8 @@ class MySiteAdmin(ImportExportModelAdmin): # instead of ModelAdmin list_display = ( 'sort_id', # 'user_id', - 'site', + # 'site', + 'site_name', 'sign_in_state', # 'sign_in_today', 'invitation', @@ -346,13 +347,18 @@ class MySiteAdmin(ImportExportModelAdmin): # instead of ModelAdmin list_filter = (SignInFilter, UpdatedAtFilter, 'my_level') + def site_name(self, obj: MySite): + template = '

{}
' + template_badge = """
{}{}
""" + site = obj.site + if obj.mail == 0: + return format_html(template, site.logo, site.url, site.name) + return format_html(template.format(site.logo, site.url, template_badge.format(site.name, obj.mail))) + # return format_html(template_badge.format(template.format(site.logo, site.url, site.name), obj.mail)) + + site_name.short_description = format_html('站点') + def sign_in_state(self, obj: MySite): - template = """ -
- {} - {} -
- """ signin_today = obj.signin_set.filter(created_at__date__gte=datetime.today()).first() if not obj.site.sign_in_support: sign_template = '无需' @@ -360,11 +366,9 @@ class MySiteAdmin(ImportExportModelAdmin): # instead of ModelAdmin sign_template = ''.format( 'yes' if signin_today and signin_today.sign_in_today else 'no' ) - if obj.mail == 0: - return format_html(sign_template) - return format_html(template.format(sign_template, obj.mail)) + return format_html(sign_template) - sign_in_state.short_description = '今日签到' + sign_in_state.short_description = format_html('签到') # def get_changeform_initial_data(self, request): # print(request)