我想在艺术管理页面中访问图像模型,因为它写了in the docs,但出了点问题:
/gallery/models.py:
class Image:
name = models.CharField(max_length=256)
thumb = models.CharField(max_length=256)
product = models.ForeignKey(Art, on_delete=models.CASCADE, related_name='images')
/product/admin.py:
class ArtImage(admin.TabularInline):
model = Image
extra = 3
class ArtAdmin(admin.ModelAdmin):
inlines = [ArtImage]
admin.site.register(Art, ArtAdmin)
当我应用makemigrations命令时,我得到了
SystemCheckError:系统检查发现了一些问题: 错误: :(admin.E106)" product.admin.ArtImage.model'的值必须是模特。
它可能是什么?
答案 0 :(得分:1)
正如Alasdair在评论中指出的那样,我在编写Image类时忘了扩展models.Model,这就是为什么它没有被识别为Model实例。
Image类应如下所示:
class Image(models.Model):
name = models.CharField(max_length=256)
thumb = models.CharField(max_length=256)
product = models.ForeignKey(Art, on_delete=models.CASCADE, related_name='images')
建议:不要在疲惫时编码,否则会犯愚蠢的错误
答案 1 :(得分:0)
就我而言,我在定义内联时不小心留下了逗号:
class PhotoInline(admin.TabularInline):
model = Photo, # <-- watch out for the comma
extra = 0