From 267964881c7a53941cec4feb41ac59e97b116cef Mon Sep 17 00:00:00 2001 From: Nick Sweeting Date: Tue, 20 Aug 2024 03:29:57 -0700 Subject: [PATCH] fix tags editor in Snapshot list view --- archivebox/core/admin.py | 26 +++++++++++++------------- archivebox/templates/admin/base.html | 8 ++++++++ archivebox/templates/static/admin.css | 7 +++---- 3 files changed, 24 insertions(+), 17 deletions(-) diff --git a/archivebox/core/admin.py b/archivebox/core/admin.py index 8f5ac72c..78b6bdf8 100644 --- a/archivebox/core/admin.py +++ b/archivebox/core/admin.py @@ -155,25 +155,26 @@ class TagInline(admin.TabularInline): ) from django.contrib.admin.helpers import ActionForm -from django.contrib.admin.widgets import AutocompleteSelectMultiple +from django.contrib.admin.widgets import FilteredSelectMultiple -class AutocompleteTags: - model = Tag - search_fields = ['name'] - name = 'tags' - remote_field = TagInline +# class AutocompleteTags: +# model = Tag +# search_fields = ['name'] +# name = 'name' +# # source_field = 'name' +# remote_field = Tag._meta.get_field('name') -class AutocompleteTagsAdminStub: - name = 'admin' +# class AutocompleteTagsAdminStub: +# name = 'admin' class SnapshotActionForm(ActionForm): tags = forms.ModelMultipleChoiceField( queryset=Tag.objects.all(), required=False, - widget=AutocompleteSelectMultiple( - AutocompleteTags(), - AutocompleteTagsAdminStub(), + widget=FilteredSelectMultiple( + 'core_tag__name', + False, ), ) @@ -235,9 +236,8 @@ class SnapshotAdmin(SearchResultsAdminMixin, admin.ModelAdmin): fields = ('url', 'created_by', 'title', *readonly_fields) ordering = ['-added'] actions = ['add_tags', 'remove_tags', 'update_titles', 'update_snapshots', 'resnapshot_snapshot', 'overwrite_snapshots', 'delete_snapshots'] - # autocomplete_fields = ['tags'] + autocomplete_fields = ['tags'] inlines = [TagInline, ArchiveResultInline] - # inlines = [ArchiveResultInline] list_per_page = SNAPSHOTS_PER_PAGE action_form = SnapshotActionForm diff --git a/archivebox/templates/admin/base.html b/archivebox/templates/admin/base.html index c0d9ac5b..00e2f205 100644 --- a/archivebox/templates/admin/base.html +++ b/archivebox/templates/admin/base.html @@ -45,6 +45,13 @@ {% endif %} {% endblock %} + + + +