2009-05-29 236 views
9

我目前正在爲一個客戶建立一個投資組合網站,而且我遇到了一個小區域的麻煩。我希望能夠爲每個投資組合項目內聯上傳多個圖像(不同數量),並且我看不到明顯的方式。在Django上傳多張圖片admin

我可以看到的最友好的方式是使用JavaScript控件的文件上傳表單,它允許用戶根據需要添加更多字段。有沒有人有過這樣的問題的經驗?的確,有沒有可以解決我的問題的自定義庫?

我以前幾乎沒有要求修改管理工具,所以我不知道從哪裏開始。

謝謝任何​​能夠闡明光芒的人。

回答

9

您可以使用Javascript很容易地擴展Admin界面。有一個good article正在做你想要的一點jQuery魔術。

你只需要他所有的代碼扔進一個JavaScript文件,然後在您的admin.py如下:

class Photo(admin.ModelAdmin): 
    class Media: 
     js = ('jquery.js', 'inlines.js',) 

看着他的來源,你也必須動態地添加鏈接添加使用Javascript多內聯,但是這很容易做到:

$(document).ready(function(){ 
    // Note the name passed in is the model's name, all lower case 
    $('div.last-related').after('<div><a class="add" href="#" onclick="return add_inline_form(\'photos\')">'); 
}); 

你可能需要做一些造型,使它看上去都正確,但應該讓你在正確的方向開始。

此外,由於您在inline土地,請查看inline sort snippet

9

photologue是一款功能豐富的django照片應用程序。它例如可以將圖庫上傳爲zip文件(這意味着可以一次上傳多個文件),自動創建不同自定義尺寸的縮略圖,並可以將效果應用於圖像。我曾經在一個項目上使用過它,整合並不太困難。

+1

+1 Photologue真的很不錯。 – 2009-05-29 13:38:37