diff --git a/arkindex/training/admin.py b/arkindex/training/admin.py index 66f3626575649c6e4a5616165d4a5073079ba93f..f8cc278929d0c29dd3f53a18fd10a91aab19d5b6 100644 --- a/arkindex/training/admin.py +++ b/arkindex/training/admin.py @@ -36,13 +36,21 @@ class DatasetSetInLine(admin.StackedInline): class DatasetAdmin(admin.ModelAdmin): - list_display = ("name", "corpus", "state") + list_display = ("name", "corpus", "state", "unique_elements") list_filter = (("state", EnumFieldListFilter), "corpus") search_fields = ("name", "description") - fields = ("id", "name", "created", "updated", "description", "corpus", "creator", "task") + fields = ("id", "name", "created", "updated", "description", "corpus", "creator", "task", "unique_elements") readonly_fields = ("id", "created", "updated", "task") inlines = [DatasetSetInLine, ] + def get_form(self, request, obj=None, **kwargs): + # Prevent editing the `unique_elements` attribute + self.readonly_fields = self.__class__.readonly_fields + if obj is not None: + self.readonly_fields += ("unique_elements",) + form = super().get_form(request, obj=None, **kwargs) + return form + admin.site.register(Model, ModelAdmin) admin.site.register(ModelVersion, ModelVersionAdmin)