MDN Django TypeError: 'NoneType' object is not callable
MDN Django TypeError: 'NoneType' object is not callable
在下面的代码中,我有一个书籍模型,我正在尝试使用装饰器将该模型与列表显示一起注册。不幸的是,我收到下面列出的错误,说我的模型列表显示 Class 存在 TypeError,其中 NonType 对象不可调用。我已经研究了解决方案,但还没有找到任何解决方案,所以很高兴获得一些帮助。我正在关注 MDN 教程 BTW,https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Admin_site。感谢您的帮助!
图书模型
class Book(models.Model):
title = models.CharField(max_length=200)
author = models.ForeignKey('Author', on_delete=models.SET_NULL, null=True)
summary = models.TextField(max_length=1000, help_text='Enter a brief description of the book')
isbn = models.CharField('ISBN', max_length=13, unique=True,
help_text='13 Character <a href="https://www.isbn-international.org/content/what-isbn'
'">ISBN number</a>')
genre = models.ManyToManyField(Genre, help_text='Select a genre for this book')
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('book-detail', args=[str(self.id)])
def display_genre(self):
return ', '.join(genre.name for genre in self.genre.all()[:3])
display_genre.short_description = 'Genre'
管理员中的图书模型,带有列表显示
@admin.site.register(Book)
class BookAdmin(admin.ModelAdmin):
list_display = ('title', 'author', 'display_genre')
错误
class BookAdmin(admin.ModelAdmin):
TypeError: 'NoneType' object is not callable
试试这个
def display_genre(self, book):
return ', '.join(genre.name for genre in book.genre.all()[:3])
(全面披露:不是我的解决方法。这似乎是教程中的一个错误,并且已请求更改它,如注释 https://github.com/mdn/content/pull/16186/files 中所述)
在下面的代码中,我有一个书籍模型,我正在尝试使用装饰器将该模型与列表显示一起注册。不幸的是,我收到下面列出的错误,说我的模型列表显示 Class 存在 TypeError,其中 NonType 对象不可调用。我已经研究了解决方案,但还没有找到任何解决方案,所以很高兴获得一些帮助。我正在关注 MDN 教程 BTW,https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Admin_site。感谢您的帮助!
图书模型
class Book(models.Model):
title = models.CharField(max_length=200)
author = models.ForeignKey('Author', on_delete=models.SET_NULL, null=True)
summary = models.TextField(max_length=1000, help_text='Enter a brief description of the book')
isbn = models.CharField('ISBN', max_length=13, unique=True,
help_text='13 Character <a href="https://www.isbn-international.org/content/what-isbn'
'">ISBN number</a>')
genre = models.ManyToManyField(Genre, help_text='Select a genre for this book')
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('book-detail', args=[str(self.id)])
def display_genre(self):
return ', '.join(genre.name for genre in self.genre.all()[:3])
display_genre.short_description = 'Genre'
管理员中的图书模型,带有列表显示
@admin.site.register(Book)
class BookAdmin(admin.ModelAdmin):
list_display = ('title', 'author', 'display_genre')
错误
class BookAdmin(admin.ModelAdmin):
TypeError: 'NoneType' object is not callable
试试这个
def display_genre(self, book):
return ', '.join(genre.name for genre in book.genre.all()[:3])
(全面披露:不是我的解决方法。这似乎是教程中的一个错误,并且已请求更改它,如注释 https://github.com/mdn/content/pull/16186/files 中所述)