我正在研究一個涉及將頭像發佈到用戶個人資料頁面的小項目,看起來很直觀。我遵循GAE網站上的「Using the Images Python API」的指示。GAE圖像通過Django發佈到數據存儲形式
雖然他們提供的示例似乎不適用於Django。在這裏搜索,我發現了一個類似問題的線程,但表示這個解決方案來自使用帶有GAE的更新版本的Django。我試圖避免這個工作,並讓它在API中構建。我對Python和Django都是新手,但從我可以收集的信息來看,圖像沒有正確地發佈到轉換圖像並將其發送到數據存儲區的函數中。這裏是我的代碼:
def post(self):
contacts = Contact()
if users.get_current_user():
contacts.owner = users.get_current_user()
else:
self.redirect('/')
contacts.fname = self.request.get('fname')
contacts.lname = self.request.get('lname')
contacts.pnum = self.request.get('pnum')
img = self.request.FILES['file'].read()
img.resize(32,32)
contacts.avatar = db.Blob(images.resize(img,32,32))
contacts.put()
self.redirect('/')
所有其他字段正確添加,除了化身場。修改後的請求字符串來自前面提到的包含修復程序的線程。當試圖訪問化身,這有點奇怪,頁面顯示一個破碎的圖像,而不是我設置的默認圖像。這使我相信,雖然該字段爲空或缺失,但在請求時還是有一些可以繪製唯一密鑰的東西。這裏是顯示圖像功能:
class Image (webapp.RequestHandler):
def get(self):
contacts = db.get(self.request.get("img_id"))
if contacts.avatar:
image = contacts.avatar
self.response.headers['Content-Type'] = "image/png"
self.response.out.write(HttpResponseRedirect(contacts.avatar))
else:
self.response.out.wrute(HttpResponseRedirect("/static/image_not_found.gif"))
試圖讓這個工作一樣,所以請相信我做到了,最初使用的代碼塊從指令時,我已經嘗試了許多不同的變化。
任何幫助,非常感謝。
在此先感謝。