2012-10-22 84 views
0

製作一個基本的Q &一個網站,並希望每個問題與映像關聯(管理員上傳),如果沒有相應的圖像,把它與一個默認的「無圖」佔位符。附加圖片到一個Django模型

我有兩個型號,答問(見下文)。每個問題都需要一個與之相關的圖像,所以我認爲最好的方法是將屬性ImageField與Question模型相關聯。

#models.py 
class Question(models.Model): 
    title = models.CharField(max_length = 500) 
    picture = models.ImageField(height_field = '250', 
           width_field = '200', 
           upload_to = 'images') 
    def __unicode__(self): 
     return self.title 

當我RUNSERVER不過,告訴我下載Python圖像庫,當我得到一個錯誤(不同的問題)。

退一步說,什麼是圖像添加到在Django模型的最佳方式?

+0

我認爲使用'ImageField'是將圖像添加到在Django模型一個完美的方式提供。如果你不能爲一個原因或其他安裝Python圖像庫(PIL),你也可以嘗試只使用'FileField'。 – aganders3

+1

我相信你正在使用height_field和width_field不正確。它應該是一個字符串,其中包含要放置指定值的字段的名稱。所以height_field ='myheightfield'。檢查[這裏](https://docs.djangoproject.com/en/dev/ref/models/fields/#imagefield) – Paulo

+0

感謝,實現了後,我試着運行該程序並沒有奏效。 –

回答

0

忘記PIL ...

使用位置URL數據庫條目。代替具有ImageField的()的,使用

picturepath = models.CharField(255) 

包含URL的圖像的靜態位置。

所以如果STATIC_URL = 「http://127.0.0.1/static/」 和picturepath = 「圖像/ poots.png」

然後,通過沿着在認爲信息,並在使用該模板:

<img src="{{ STATIC_URL }}{{ question.picturepath }}"> 

<img src="http://127.0.0.1/static/images/poots.png"> 
相關問題