Я следую учебнику Mozilla Django, в настоящее время на этой странице.
Я пытаюсь получить ModelAdmin
для модели Book
, чтобы вызвать функция модели Book
в list_display
модели ModelAdmin
. Это для предоставления списка жанров в списке.
У меня есть следующий код в файле admin.py
:
class BookAdmin(admin.ModelAdmin):
list_display('title', 'author', 'display_genre')
И в файле models.py
:
class Book(models.Model):
# ...
def display_genre(self):
return ', '.join(genre.name for genre in self.genre.all()[:3])
display_genre.short_description = 'Genre'
Я полагаю, что это было именно то, что учебник попросил меня добавить к каждому из этих файлов.
Вот что django говорит мне, когда я пытаюсь вызвать python manage.py makemigrations
:
SystemCheckError: System check identified some issues:
ERRORS:
<class 'catalog.admin.BookAdmin'>: (admin.E108) The value of 'list_display[2]' refers to 'display_genre', which is not a callable, an attribute of 'BookAdmin', or an attribute or method on 'catalog.Book'.
Я не уверен, что сделал неправильно.