diff --git a/crawler/admin.py b/crawler/admin.py index 8d8a8e5..6d02abd 100644 --- a/crawler/admin.py +++ b/crawler/admin.py @@ -59,16 +59,23 @@ class CrawlTaskAdmin(admin.ModelAdmin): @admin.register(CrawledContent) class CrawledContentAdmin(admin.ModelAdmin): - list_display = ['title_short', 'website', 'task', 'keywords_matched', 'media_count', 'publish_date', 'is_local_saved', 'created_at'] + list_display = ['title_display', 'website', 'task', 'keywords_matched', 'media_count', 'publish_date', 'is_local_saved', 'created_at'] list_filter = ['website', 'task', 'created_at', 'publish_date', 'is_local_saved'] search_fields = ['title', 'content', 'keywords_matched'] readonly_fields = ['created_at', 'preview_content', 'media_files_display'] ordering = ['-created_at'] - def title_short(self, obj): - """显示缩短的标题""" - return obj.title[:50] + '...' if len(obj.title) > 50 else obj.title - title_short.short_description = '标题' + def title_display(self, obj): + """显示完整的标题,但在列表中限制宽度""" + if len(obj.title) > 100: + return format_html( + '{}', + obj.title, + obj.title[:20] + '...' + ) + return obj.title + title_display.short_description = '标题' + title_display.admin_order_field = 'title' def media_count(self, obj): """显示媒体文件数量"""