我有一个类似的模型:
class Category(models.Model):
name = models.CharField(max_length=100)
description = models.TextField()
thumbnail = models.ForeignKey(MediaFile)
def __unicode__(self):
return self.name
此处我thumbnail
有MediaFile
个外键。
我希望拥有Inline
Category
模型。
我做到了:
class MediaInline(admin.StackedInline):
model = MediaFile
extra = 0
max_num=0
class CategoryAdmin(admin.ModelAdmin):
list_display = ('name',)
inlines = [ MediaInline, ]
admin.site.register(Category, CategoryAdmin)
它没有发生..我假设MediaFile
内联到Category
。这里有什么问题?
答案 0 :(得分:2)
你的外键是错误的方式。如果您想在一个类别中使用多个媒体文件,则fk需要存在于MediaFile模型中。这样内联就可以了。
答案 1 :(得分:1)
您无法以这种方式设置内联,因为类别实例将在MediaFile之前保存。然而,当MediaFile没有保存时,Django将无法设置Category.thumbnail。
例如,您应该在CategoryInline
中使用MediaFileAdmin
。