GAE

bulkloaderでUTF-8のファイルをアップロードするときの注意

GAE

bulkloaderでUTF-8のファイルをアップロードする際は、BOMなしにすること! BOMありにすると、ファイルの先頭のデータが認識されなくなる。 この現象を発見した経緯 (1)アップロードさせたいテストデータをExcelで作成し、CSVファイルとして保存。 (2)bulklo…

Datastore関連でよくわかってなかったこと整理

GAE

わかっているようでわかってなかったので整理。 用語 kind RDBでいうところのテーブルのこと Entity RDBでいうところのレコードのこと #テーブルのことじゃなかった! Propery RDBでいうところのカラムのこと Tips 異なるバージョン間のDatastoreは別々にな…

webapp2で、ソースファイルをサブフォルダに置きたい

GAE

webapp2のサンプルでは、ほとんどのファイルがアプリケーションのルートディレクトリに置かれているので、ソースコードをサブフォルダに置きたい場合のやり方がわかりにくい。ちなみに、Python2.5 + webapp だった時代は、このようにやってた。 ディレクトリ…

Mac版 SDK on Python の dev_appengine.py の場所

GAE

Mac版のSDKをダウンロードすると、その中身は、GoogleAppEngineLauncher.app というファイルが1つしかなく、開発サーバの本体である dev_appserver.py がどこに存在しているのか、ずっとわからないままだったのだが、ようやっとその場所を発見。GoogleAppEn…

ソート順の制御

データストアに日付をキーにして格納されているデータをSELECTして、それを 日付の降順に一覧表示(TABLEタグに吐き出す) 日付の昇順にチャート表示(XMLデータに吐き出す) という2つの処理を同一ページ内でやりたい。最初は、日付の降順でのSELECTと、日付…

XMLを吐き出す

GAE

GAEのデータストアに保存したデータを取得し、FusionChart(Flashベースのグラフ出力ライブラリ)でグラフ表示するというプログラムを作っている。 FusionChartは、グラフにプロットするデータを、以下のような形式のXMLで渡してやる必要がある。 XMLの一例…

おさらい−新規プロジェクト追加から公開まで−

当初、自分は、新規プロジェクト作成、コーディング、テスト(実行)まですべてAptana上で行っていたのだが、GAEの本番環境へのデプロイのことを考えると、Google App Engine Launcher を使っておかないと何かと不便だということがわかってきた。 ここであら…

GAEでmatplotlib使いたかったけど

どうも使えないようです。 C拡張モジュールが使えないためではないかと想像しているのだけど。import matplotlib.xxxx とやると、matplotlib からnumpy を使っていて、その中で multiarray を使おうとしているところで No module named multiarray となって…

ログ出力方法

GAE

java等のloggingと同じ使い方ができます。 import logging from google.appengine.ext import webapp class MainPage(webapp.RequestHandler): def get(self): logging.debug("testtest") #ここでログを出力 application = webapp.WSGIApplication( [('/',Ma…

外部javascriptファイルの取り込み

GAE

自作のjavascriptを、独立した.jsファイルにして、それを取り込む場合は、app.yamlにその事を書いておかないと、jsファイルがロードできない。app.yaml抜粋(アプリケーションルート/scripts というフォルダの下にjsファイルを置くという想定) handlers: - …

画面ごとにpyファイルを分けるときの注意点

GAE

GAEのドキュメントの「スタートガイド」に出てくる、おなじみのミニマムコード。 from google.appengine.ext import webapp from google.appengine.ext.webapp.util import run_wsgi_app class MainPage(webapp.RequestHandler): def get(self): self.respon…

外部モジュールが読み込めない件(その4)少し理解してきたかも

GAE

今日から本格的に自宅のMacで作業しはじめたのだが、上記の手順で作ったプロジェクトのmain.pyに、軽い気持ちでimport BeautifulSoup と書いて実行させたら、またぞろエラーになったので、GAEのドキュメントを読んでいたら、その件についてちゃんと書いてあ…

Macの場合

GAE

Mac OS Xにて、GAEの新規プロジェクトを作る方法は、Windowsと少し違っていたのでメモ。(Windowsでの自分のやり方が違うのかもだけど) GoogleAppEngineLauncher.app を起動する Fileメニューから New Application を選択 任意のアプリケーション名を入力 A…

データストアのクリア方法(DROP TABLE的な)

GAE

GAEで、データストアを一旦定義して実行させて、その後、プロパティのデータ型を変更すると、実行時に「型が違うのでputできないよ」的なエラーとなってしまう。 これは、GAEエンジン(dev_appserver.py)の再起動や、マシン自体の再起動でも解消しない。(…

Google App Engine を試す

GAE

Google App Engine(GAE) を試してみる。JavaでなくPythonでやってみることにした。 Python本体を入れる。 http://www.python.jp/Zope/download/pythoncore GAEの対応バージョンは2.5なので、2.5系列の一番新しいのを入れる。 実は最初それに気づかなくて、3.…