http://code.google.com/intl/zh-TW/appengine/docs/python/tools/uploadingdata.html
照著上面的文件說明,會踹一次就成功的,只能說是神人了…經過無數次試誤,歸納出以下步驟;以下所提到的"腳本目錄"就是app.yaml等原始碼所在的目錄
(本地端環境寫入)
1.如果先前沒有設定PYTHONPATH的話,要記得設定,不然它會找不到你的.py檔;PYTHON_LIB則是要處理windows和linux/unix系統間的不一致,尤其是路徑的表示法
set PYTHONPATH=...放model的目錄;為了方便起見,就用腳本目錄吧
set PYTHON_LIB="C:/Program Files/Google/google_appengine"
- url: /remote_api
script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py
login: admin
python "C:\Program Files\Google\google_appengine\dev_appserver.py" --port=8080 .
4."建立載入器類別",這步大概照做
5."準備您的資料",這步大概照做,所撰寫的程式要放在前述的PYTHONPATH底下;為了方便起見,先進入腳本目錄,然後將新腳本放在此目錄下
6."將資料載入開發伺服器",執行下列指令,登入就打admin,密碼沒有,如app.yaml所指定;若出現10061錯誤,加上--num_threads=4;為了方便偵錯,把錯誤訊息重導到到error.txt的話,可以在下列指令最後再加上 >errors.txt 2>&1
python "C:\Program Files\Google\google_appengine\appcfg.py" upload_data --config_file=XXX.py --filename=YYY.csv --kind=ZZZ --url=http://localhost:8080/remote_api --num_threads=4 .
p.s.像ms sql analyzer那樣的工具 http://localhost:8080/_ah/admin/datastore
p.s2.跳出一堆error,似乎和utf-8有關...字串型態需設為 lambda x: unicode(x, 'utf-8') ,參考 http://code.google.com/p/googleappengine/issues/detail?id=157#c18 ;文字中的雙引號"也要改為兩個""作為escape
沒有留言:
張貼留言