雖然放假了,我還是滿常來 Lab 的,這兩天的主要內容是研究 Google App Engine ,進度從安裝、「Hello World!」、以 Google Account 作身分認證,一直到使用 Datastore API ,然後上 PTT 發現有人把功能很完整的 Ikariam 物資交易平台做好了,讓我又失去了我的題目1 XD
雖然如此,但作一下最近的筆記。
安裝 Python 、 Google App Engine 及 GAEO
- 下載 Google App Engine SDK 及 Python 2.5。
- 以上兩個都是照著指示按「下一步」就能裝好。
- 下載 GAEO,然後解壓縮到任何你喜歡的地方。
- 在我的電腦上按右鍵→內容→進階→環境變數。然後在 PATH 的最後加上
;C:\Python25;D:\Documents\htdocs\gaeo\bin←此為範例,請根據你將 Python 、 GAEO 安裝在哪裡而修改。至於 Google App Engine SDK 則會自動幫你加上,不用我們動手。
建立一個新的專案
- 在你喜歡的資料夾中,以命令提示字元執行
gaeo.py project_name,GAEO 就會幫你建立好project_name資料夾以及基本的程式與資料夾結構。 - 然後在
project_name資料夾中,以命令提示字元執行dev_appserver.py --port=8080 .2,這樣就能將程式執行起來,你可以在 http://127.0.0.1:8080/ 看到結果,看見 “It works!!” 就表示成功了。這個畫面的程式位於project_name/application/controller/welcome.py,而 template 位於project_name/application/templates/welcome資料夾中。
建立新的 Controller
- 在
project_name資料夾中,以命令提示字元執行gaeogen.py controller Say這樣會在project_name/application/controller中建立一個say.py,其中就是新的 Controller ,名為SayController;此外也會建立一個project_name/application/templates/say資料夾,內容是空的,留待未來使用。
上傳到 Google App Engine
- 這邊我實在得說 Google 包裝得很好,只要在
project_name資料夾中,以命令提示字元執行appcfg.py update .3 ,程式便會傳上去,並且會自動編版號。
其他
- 以 Google Account 作身分認證同樣很簡單,基本上照著 Google 的教學文件作就沒錯了,只不過在本機端測試時它不需要真的登入,只會出現一個看起來怪怪的登入畫面,這並不是你作錯了。
- 有時候程式發生問題時,會噴 Error 404 而不給錯誤訊息,我目前還不知道 Python 有什麼簡單的 debug 方式…
- 目前 GAEO 的
gaeogen.py只能用來生成 Controller ,所以我不知道 Model 應該放在哪裡… - 在編輯工具方面我試了 Eclipse 及 UliPad , Eclipse 看得出來是一個功能非常強大的 IDE ,
但我不知道怎麼將它和 GAEO 整合在一起4;而 UliPad 有些功能不符合我的習慣,它的 Auto-completion 則是基於「本檔案中曾使用過的函式」,對我來說沒什麼幫助,最後還是用回 EmEditor。