好吧,那個標題可能和模糊的東西一樣模糊,但我不能想出一些好東西。讓我解釋我的問題。Django,如何使用每個外鍵的新自動編號重命名圖像?
爲了解釋,我將以書籍爲例,僅僅因爲這很簡單。所以,想象我有這樣的2個模型:
class Book(models.Model):
title = models.CharField(max_length=100)
class BookImage(models.Model):
book = models.ForeignKey(Book)
image = models.ImageField()
is_cover = models.BooleanField()
現在,你可以看到一本書可以有多個圖像。我想將上傳的圖像重命名爲[書名] - [image-id] .jpg(或當然有任何圖像擴展名)。但是,我希望image-id在每本書中都是唯一的。如果這是有道理的。
所以,如果我有BookA,我想要的圖像被稱爲BookA-1,BookA-2和BookA-3等,並在BookB 1再次開始,BookB-1,BookB-2,BookB3等
任何想法我可以做到這一點?我一直在考慮這個問題,但我不能想出一個非常好的解決方案。起初,我認爲我可以指望圖像的數量,並添加1,但如果刪除圖像,則會遇到問題。我還想過在單獨的模型中跟蹤ID,但聽起來過於「複雜」。爲了讓事情變得更糟,我想要一次上傳多個圖像(好吧,圖像上傳是在Django管理中內聯的),所以它也必須能夠使用它...所以,我是想知道這裏有人有一個好主意嗎?有沒有簡單的解決方案?
我也一直在使用google搜索,但要麼沒有人有任何問題,或者我只是(很可能)不能拿出正確的搜索詞(以同樣的方式,我不能拿出一個正確的標題:P)。
感謝您的閱讀!
謝謝,但我知道如何更改上傳圖像的文件名。但是我想知道如何跟蹤文件名的id部分,我希望每本書都是獨一無二的,而不是所有書籍都是唯一的。也許我還不夠清楚......:/ – Landcross
是否正在工作.. – Thameem
你試過這段代碼嗎?它會產生預期的輸出。 – Thameem