Жалуется на отсутствие list_display при использовании TabularInline
Выдает сообщение об отсутствии list_display
при использовании TabularInline
. Я хочу добавить сортировку для моей подмодели. Я использую класс SortableAdminMixin
и admin.TabularInline
, но admin.TabularInline
не имеет нужного поля для SortableAdminMixin
. Когда я пытаюсь написать list_display = "__all__"
, ничего не происходит.
Жалуется на отсутствие list_display
при использовании TabularInline
from adminsortable2.admin import SortableAdminMixin
class ProjectStepInline(SortableAdminMixin, admin.TabularInline):
model = ProjectStep
min_num = 1
extra = 0
class ProjectAdmin(admin.ModelAdmin):
inlines = [ProjectStepInline]
console:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.8/site-packages/django/utils/autoreload.py", line 53, in wrapper
fn(*args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/django/core/management/commands/runserver.py", line 118, in inner_run
self.check(display_num_errors=True)
File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 392, in check
all_issues = checks.run_checks(
File "/usr/local/lib/python3.8/site-packages/django/core/checks/registry.py", line 70, in run_checks
new_errors = check(app_configs=app_configs, databases=databases)
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/checks.py", line 54, in check_admin_app
errors.extend(site.check(app_configs))
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/sites.py", line 85, in check
errors.extend(modeladmin.check())
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/options.py", line 120, in check
return self.checks_class().check(self, **kwargs)
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/checks.py", line 639, in check
*self._check_inlines(admin_obj),
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/checks.py", line 677, in _check_inlines
return list(chain.from_iterable(
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/checks.py", line 678, in <genexpr>
self._check_inlines_item(obj, item, "inlines[%d]" % index)
File "/usr/local/lib/python3.8/site-packages/django/contrib/admin/checks.py", line 716, in _check_inlines_item
return inline(obj.model, obj.admin_site).check()
File "/usr/local/lib/python3.8/site-packages/adminsortable2/admin.py", line 106, in __init__
if isinstance(self.list_display_links, (list, tuple)) and len(self.list_display_links) == 0:
AttributeError: 'ProjectStepInline' object has no attribute 'list_display_links'
Добавьте list_display_links
в вашу админку, с полем из вашей модели;
class ProjectStepInline(SortableAdminMixin, admin.TabularInline):
model = ProjectStep
min_num = 1
extra = 0
list_display_links = ['my_field']
В документации adminsortable2
это не описано подробно, но это включено в пример;
@admin.register(models.SortableBook)
class SortableBookAdmin(SortableAdminMixin, admin.ModelAdmin):
list_per_page = 12
list_display = ['author', 'title', 'my_order']
list_display_links = ['title']
inlines = [ChapterInline, NotesInline]