2011-03-29 134 views
9

有沒有一種簡單的方法在Django的管理界面中包含文件上傳功能?我看到這個question,但我不熟悉Javascript。使用Django Admin上傳圖片?

是否有任何magick我可以添加到models.py或admin.py文件,這將允許我輕鬆地使用Django的內置CMS系統做到這一點?

背景:

我試圖創建的名人,其中包括他們的生物,出生日期的數據庫,我想包括檔案圖片去用它。這是我正在研究我的Django/Python的一個迷你項目的一部分。

謝謝。

回答

22

原諒我,如果我錯了,但它聽起來就像你不需要什麼比默認的admin小部件更多的ImageField.

這滿足:使用Django管理

  1. 上傳圖片
  2. 包括個人資料圖片(單數)與名人一起去。

此外,您指向的鏈接已經很老了。 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) 
+1

正如我假設奈預計上傳的圖片的一些更多的調整是可以做到的自動縮略圖預覽:http://stackoverflow.com/questions/1385094/django-admin-and-showing-thumbnail-images – arie 2011-03-29 07:57:10

+0

我想這是可能的。他的鏈接和他的語言都是關於上傳的,所以它並沒有跨越我的想法。 – 2011-03-29 13:26:49