使用Django Admin上传图片?

时间:2011-03-29 03:48:27

标签: python django django-models django-admin

是否有一种简单的方法可以将文件上传功能包含在Django的管理界面中?我看到了这个question,但我并不精通Javascript。

我可以添加到models.py或admin.py文件中的任何魔法,这些文件可以让我轻松地使用Django的内置CMS系统吗?

背景:

我正在尝试创建一个包含他们的生物,出生日期的名人数据库,我想要包含一张个人资料图片。这是我正在努力刷新我的Django / Python的迷你项目的一部分。

感谢。

1 个答案:

答案 0 :(得分:23)

如果我错了,请原谅我,但听起来你不需要比ImageField.的默认管理小部件更多的东西

满足:

  1. 使用Django Admin上传图片
  2. 包括个人资料图片(单数)与名人一起去。
  3. 此外,您指向的链接已经很老了。这些天django管理员随机启用了javascript任意长的内容(我认为至少一年),所以如果你想要多个图像,只需设置第二个具有外键的模型。设置an admin inline,你就可以开箱即用了!

    class Celebrity(models.Model):
        name = models.CharField()
    
    class Image(models.Model):
        celebrity = models.ForeignKey(Celebrity)
        image = models.ImageField()
    
    class InlineImage(admin.TabularInline):
        model = Image
    
    
    class CelebrityAdmin(admin.ModelAdmin):
        inlines = [InlineImage]
    
    admin.site.register(Celebrity, CelebrityAdmin)