2016-06-23 11 views
0

我正在創建一個類對象,並且我不知道最好的方法來做到這一點,我將零到三個圖像關聯到一個類對象。將多個圖像與一個類對象邏輯聯繫起來

示例:用戶創建圖片競賽時,他們用零至三張圖片定義其圖片樣式。這些是靜態圖像,所以它們將永遠不會被更新。

我能想到的唯一方法是創建一個名爲stylePictures的單獨類,並在Contest中有三個字段,表示「styleOne」,「styleTwo」和「styleThree」,它們可以爲null。這似乎並不是最有效的方法。

任何想法?

回答

2

我會創建兩個單獨的類。這樣,您的功能可以輕鬆演變成將來使用更多照片的功能。

class PictureContest(models.Model): 
    # fields 

class PictureStyle(models.Model): 
    image = models.FileField(upload_to="upload/picture_style") 
    picture_contest = models.ForeignKey("PictureContest") 

獲取與該圖片比賽相關的所有圖片樣式。

首先你必須隔離你想要的圖片比賽。

pc = PictureContest.objects.filter(id=2) # find your picture contest 

然後篩選具有pc.id作爲字段值的圖片的樣式。

pic_styles = PictureStyle.objects.filter(picture_contest__id=pc.id) 
+0

這是我在想的路線,但是在PictureContest中,你會添加什麼字段來表示是否選擇了特定的PictureStyle實例?我需要零個到三個PictureStyle對象與一個PictureContest對象關聯 – manchakowski

+0

你應該在問題中包含這個。查看修改。 – marcusshep