假设我有这些Django模型:
class Genre(models.Model):
name = models.CharField(max_length=255)
class Author(models.Model):
name = models.CharField(max_length=255)
genre = models.ForeignKey('Genre')
class Book(models.Model):
name = models.CharField(max_length=255)
author = models.ForeignKey('Author')
我想在Django Admin中为一个显示所有相关书籍的Genre实例定义内联。我该怎么办?
我试过这种方式:
class BookInline(admin.TabularInline):
model = Book
extra = 0
class GenreAdmin(admin.ModelAdmin):
inlines = [BookInline]
admin.site.register(Genre, GenreAdmin)
这给我带来了错误:
ValueError: 'Book' has no ForeignKey to 'Genre'
如何正确定义内联?
答案 0 :(得分:0)
你应该把Genre放在书上,然后在作者上创建一个方法,列出书中的类型,所以基本上是作者类型将从书中填充。