2010年5月14日金曜日

GAE Python:日本語の関係でちょっと嵌る

 一区切り付いたので一応デプロイしてみたら、お約束で動かない (; ;)

 最初は文字コードの 0xXX が処理できない、みたいなエラー。ソースの発生した場所を見てみると、新しく追加した日本語コメントの場所。
 ここはお約束でファイル先頭に '# -*- coding: utf-8 -*-" を追加。基本をサボるとつまらんところに引っかかる。

 二つ目はちょっと手強かった。フォームでデータを入力し、[登録]ボタンを押すとデータストアに登録されるはずなのに、なぜか全く登録されない。
 aptana,GAE Launcher では全く問題ない。

 あっちこち調べていくうちに、app engine の Dashboard(GAE Launcher の右上のボタンから入れる)の左メニューに Logs を発見。開くと E のアイコンが !!

 開いてみると、メッセージはこんな感じ。

UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal

E 05-13 09:30PM 18.654

if self.request.get('cmd') == '登録':
 なるほど、登録のボタンが押されたことを認識できなければ、当然データベースに登録はされない。
 さてどうしようと悩んだが、とりあえず u'登録' とやってみたら OK。
 これも基本中の基本だよなぁ orz。

 三歩進んで二歩下がり下がりながら、今日も一歩前進。

0 件のコメント:

コメントを投稿