diff --git a/src/backend/InvenTree/common/admin.py b/src/backend/InvenTree/common/admin.py index 00db4a66d1..6815203984 100644 --- a/src/backend/InvenTree/common/admin.py +++ b/src/backend/InvenTree/common/admin.py @@ -74,7 +74,9 @@ class AttachmentAdmin(admin.ModelAdmin): readonly_fields = ['file_size', 'upload_date', 'upload_user'] - search_fields = ('content_type', 'comment') + search_fields = ('comment', 'link', 'upload_user__username') + + autocomplete_fields = ('upload_user',) @admin.register(common.models.DataOutput) @@ -85,6 +87,16 @@ class DataOutputAdmin(admin.ModelAdmin): list_filter = ('user', 'output_type') + search_fields = ( + 'output_type', + 'output', + 'user__username', + 'user__first_name', + 'user__last_name', + ) + + autocomplete_fields = ('user',) + def has_add_permission(self, request): """Prevent addition of new DataOutput objects via the admin interface.""" return False @@ -102,6 +114,10 @@ class BarcodeScanResultAdmin(admin.ModelAdmin): list_filter = ('user', 'endpoint', 'result') + search_fields = ('data', 'endpoint', 'result', 'user__username') + + autocomplete_fields = ('user',) + def has_add_permission(self, request): """Prevent addition of new BarcodeScanResult objects via the admin interface.""" return False @@ -127,6 +143,8 @@ class SettingsAdmin(admin.ModelAdmin): list_display = ('key', 'value') + search_fields = ('key', 'value') + def get_readonly_fields(self, request, obj=None): # pragma: no cover """Prevent the 'key' field being edited once the setting is created.""" if obj: @@ -140,6 +158,16 @@ class UserSettingsAdmin(admin.ModelAdmin): list_display = ('key', 'value', 'user') + search_fields = ( + 'key', + 'value', + 'user__username', + 'user__first_name', + 'user__last_name', + ) + + autocomplete_fields = ('user',) + def get_readonly_fields(self, request, obj=None): # pragma: no cover """Prevent the 'key' field being edited once the setting is created.""" if obj: @@ -153,6 +181,10 @@ class WebhookAdmin(admin.ModelAdmin): list_display = ('endpoint_id', 'name', 'active', 'user') + search_fields = ('endpoint_id', 'name', 'user__username') + + autocomplete_fields = ('user',) + @admin.register(common.models.NotificationEntry) class NotificationEntryAdmin(admin.ModelAdmin): @@ -160,6 +192,8 @@ class NotificationEntryAdmin(admin.ModelAdmin): list_display = ('key', 'uid', 'updated') + search_fields = ('key', 'uid') + def has_add_permission(self, request): """Prevent addition of new NotificationEntry objects via the admin interface.""" return False @@ -185,7 +219,9 @@ class NotificationMessageAdmin(admin.ModelAdmin): list_filter = ('category', 'read', 'user') - search_fields = ('name', 'category', 'message') + search_fields = ('name', 'category', 'message', 'user__username') + + autocomplete_fields = ('user',) def has_add_permission(self, request): """Prevent addition of new NotificationMessage objects via the admin interface.""" @@ -202,6 +238,8 @@ class NewsFeedEntryAdmin(admin.ModelAdmin): list_display = ('title', 'author', 'published', 'summary') + search_fields = ('title', 'author', 'summary') + def has_add_permission(self, request): """Prevent addition of new NewsFeedEntry objects via the admin interface.""" return False diff --git a/src/backend/InvenTree/importer/admin.py b/src/backend/InvenTree/importer/admin.py index e5bf958000..da7fd8cd8e 100644 --- a/src/backend/InvenTree/importer/admin.py +++ b/src/backend/InvenTree/importer/admin.py @@ -38,6 +38,15 @@ class DataImportSessionAdmin(admin.ModelAdmin): list_filter = ['status'] + search_fields = [ + 'user__username', + 'user__first_name', + 'user__last_name', + 'model_type', + ] + + autocomplete_fields = ['user'] + inlines = [DataImportColumnMapAdmin] def get_readonly_fields(self, request, obj=None): @@ -66,6 +75,8 @@ class DataImportRowAdmin(admin.ModelAdmin): list_display = ['id', 'session', 'row_index'] + autocomplete_fields = ['session'] + def get_readonly_fields(self, request, obj=None): """Return the readonly fields for the admin interface.""" return ['session', 'row_index', 'row_data', 'errors', 'valid'] diff --git a/src/backend/InvenTree/machine/admin.py b/src/backend/InvenTree/machine/admin.py index 02533715c8..79487d951b 100755 --- a/src/backend/InvenTree/machine/admin.py +++ b/src/backend/InvenTree/machine/admin.py @@ -22,6 +22,7 @@ class MachineConfigAdmin(admin.ModelAdmin): """Custom admin with restricted id fields.""" list_filter = ['active'] + search_fields = ['name', 'machine_type', 'driver'] list_display = [ 'name', 'machine_type', diff --git a/src/backend/InvenTree/stock/admin.py b/src/backend/InvenTree/stock/admin.py index f5159d9d64..15d3b8b1bd 100644 --- a/src/backend/InvenTree/stock/admin.py +++ b/src/backend/InvenTree/stock/admin.py @@ -37,6 +37,7 @@ class LocationTypeAdmin(admin.ModelAdmin): list_display = ('name', 'description', 'icon', 'location_count') readonly_fields = ('location_count',) + search_fields = ('name', 'description') def get_queryset(self, request): """Annotate queryset to fetch location count."""