gae

GAE Hack-a-thon の募集が始まっています

Google Developer Day 2009 Japan ハッカソン エントリーフォーム 6/11 平日という ... 日に行いますので、お時間がある方どうぞ。今回は Python と Java 以外に、JRuby と PHP 枠を設ける予定です。 Python は GAE 専用フレームワークをリリース予定の tmat…

Google App Engine Memcache API の namespace

gae

Google App Engine Memcache API に namespace がありますね。これは便利。

GAE で使用する際のフォームについて

gae

formencode や WTForm 等色々使ってきましたが、Django の forms(newform) が一番使いやすいですね。Django の forms は Django にくっついてるので、ひっぺがして GAE 向きにしたものを作成したいです。ModelChoice とかも model_query を渡せばさくっと動…

Google App Engine Hack-a-thon Disc.3

市ヶ谷の会議室にて Google App Engine Hack-a-thon が行われました。事前ミーティングを行い、複数のグループに別れての作業を行いました。 私は便利屋さんとして参加していたので、色々な質問に答えたり、逆に教わったりできてとても勉強になりました。皆…

まさか PHP ねたでブログを更新する時が来るとは

Google App EngineでPHPが動きました - muddy brown thang

Google App ENgine Hack-a-thon 事前ミーティングに参加してきた

gae

19:00 から Google (渋谷) にて まずはチュートリアルとそれ以外のチーム分け AppScale 組が現れる チュートリアル以外の人でブレスト GData や remote_api などかなり楽しそうなグループが生まれる 本番(4/11)に向けて何を作るか相談する 終わった松屋で一…

Google App Engine Hack-a-thon 募集中です

gae

Google App Engine hack-a-thon ふるってご参加下さい。

関西 Google App Engine Hack-a-thon

gae

Google Apps Guru & Google App Enginex Expert の tmatsuo さんが関西 GAE Hack-a-thon のサーベイをしています。 関西での Google App Engine Hack-a-thon への関心度サーベイ Google Group で話されていたので、転載します。 CTO や上司は参加すると思う…

ローカルかどうかを見分ける方法

gae

渋川先生が Twitter で話されていたので。Django でどうやるかは知りませんが WSGI であれば ... if 'SERVER_SOFTWARE' in os.environ and os.environ['SERVER_SOFTWARE'].startswith('Dev'): こんな感じでいいです。

GAE Hack-a-thon Disc.3

gae

Google App Engine のハッカソンやります。 事前ミーティングで、何をやりたいかを決めて、ハッカソンをやるというスタイルを取る予定です。Google App Engine Japan の Google Group に張られた物をコピペ。 転送自由って書いてありますし:-P 松尾です。 み…

ほぼ汎用イベント管理ツールの紹介

そういえば、ブログに書いたことが無かった気がする。 http://twisted-mind.appspot.com/ Mercurial 勉強会の募集用に作ったら意外に使えるので、そのまま使い続けてます。 これ Google App Engine で動いてます。つかってるフレームワークやツール等を下記…

db.CategoryProperty の使い方

gae

ドキュメントにのってますが。spam.category = db.Category(u'すぱむ') という書き方をする。 クエリーは filter('category =', db.Category(u'すぱむ') です。StringProperty() との違いが見いだせません。理解してる賢者求む。

プロジェクトとアプリの構成

何がスマートなのかは人それぞれ、プロジェクト事に違うと思いますが。 最近色々触ってみて、気付いた点。WSGI の話しです。Werkzeug の Routing System はシンプルながら強力です。Django で不満だった正規表現や階層の問題をシンプルに解決してくれていま…

GAE 上で PDF の生成

Google Docs API とか使う必要があるのかなぁと思っていましたが、意外に簡単にいけるようです。松尾さん(tmatsuo)が早速試してました。 http://tm-test.appspot.com/ ... いきなり PDF が落ちてきますので注意を。サンプルのソースコードも公開されています…

dateutil を使ったタイムゾーン管理

datastore には UTC で格納して表示するときに localtime (tznam で指定した時間) で表示したい場合を簡単に書いてみました。 さらに localtime から UTC に変換するものも書いてみました。 from datetime import * from dateutil import zoneinfo, tz def l…

Datastore に格納されているかどうか。

Model の instance で is_saved() というメソッドがあります。 これは、一度でもデータストアに格納されていたら True を返すというものです。こんな感じで使えます。 class Spam(db.Model): created = db.DateTimeProperty() def put(self): if not self.is…

tzinfo 置き換え

timezone を置き換えるのに一番スマートなのはなんだろうと考えていたら、 松尾さん(tmatsuo) にサンプルソースを見せていただいて、replace が一番シンプルという事を教えていただきました。 >>> from datetime import datetime, date, time >>> now = date…

タイムゾーンの問題

gae

GAE ではタイムゾーンの問題がありましたが、シンプルに解決する方法を見付けたかもしれません。とりあえず ... import wsgiref.handlers from datetime import datetime, date, time from google.appengine.ext import webapp from dateutil import zoneinf…

Django Hack-a-thon Disc.8 の二次募集は ...

Django Hack-a-thon Disc.8 一次募集の 20 人がなんと4時間で埋まってしまいました ... 。うーむ ... 講師陣大人気、ということで二次募集は 2009年03月01日 22時00分 からです。http://twisted-mind.appspot.com/django-ja-hack-a-thon-disc-8/日曜日の夜 …

でぃすぱっち

まだ、テスト中ですが、なかなか良さそうなので。werkzeug の utils にシンプルですが面白い DispatcherMiddleware というのがあります。本当に application をディスパッチします。中身はまぁソース見れば、あーですよね、と言う感です:-PGAE + Werkzeug + …

ほぼイベデザイン

自分がデザイン力0なので、こーゆーの見ると「ほへー」となります。プログラムが書けるデザイナってすごい。HTML とか CSS とか難しすぎてわからない。 @hfunai デザイン @miwaza デザイン

Django Hack-a-thon Disc.8 の概要

開催日は 2009/04/25 の 10:00 からです。2009/02/25 22:00 から一次募集開始予定、三回に分けて募集します。 http://twisted-mind.appspot.com/django-ja-hack-a-thon-disc-8/さて、概要ですが、今回は土曜日をまるまる使って行います。 今後も、このような…

test について

werkzeug にはテストツールも付いてきます。 from werkzeug import Client, BaseResponse from app import Application class TestDatastore(unittest.TestCase): """ 23.3 unittest http://www.python.jp/doc/release/lib/module-unittest.html 23.3.35 Tes…

Google App Engine 一人勉強会 第二回 jinja デビューとデバッグ

目標とサンプルとソース置き場 目標は Google App Engine 上で動くアプリを作り上げることです。サンプル http://twisted-pool.appspot.com/ ソース http://bitbucket.org/voluntas/twisted-pool/src/ バージョン Google App Engine 1.1.9 Python 2.6.1 (GAE…

Google App Engine 一人勉強会 第一回 とりあえず動かしてみる

目標とサンプルとソース置き場 目標は Google App Engine 上で動くアプリを作り上げることです。サンプル http://twisted-pool.appspot.com/ ソース http://bitbucket.org/voluntas/twisted-pool/src/ 第一回 とりあえず動かしてみる Google App Engine 1.1.…

Google App Engine ろーどまっぷ

gae

タスクスケジューラーのサポート バックグラウンドで動作するタスクキュー メールを受信したり処理したりできる。 XMPP(じゃばー) を受信したり送信したり出来る な・・なんだってー。Google App Engine Blog: A roadmap update!

Google App Engine 1.1.9 がリリースされました。

gae

気になったところだけ。 HTTP の request / response で送れる容量が 1M から 10M へ urllib / urllib2 の使用が可能になりました。 db.Query が IN と != をサポートしました。 Images API が PIL.IMage と Image という import 記述でも良くなりました。 r…

Google App Engine で Django を使う際の今のところの最適解は app-engine-patch だと思う。

app-engine-patch - Google Code id:nullpobug(tokibito/岡野) にレビューを(強制的に)振ったのでそのうち出てきます、お待ち下さい。 これは Google App Engine に最適化された Django です。Django 本体に patch をあてて、zip になっているものが落とせる…

GAE 1.1.8 がリリースされました

gae

気になったところだけ。間違ってたら突っ込んで下さい。 ByteStringProperty が実装 気軽に使える BlobProperty UserProperty に auto_current_user / auto_current_user_add が追加。 DateTimeProperty と同じ動作すると思われ。 PolyModel が追加されまし…

djangoforms における validation

gae

0.96 と 1.0 を行き来するのは大変。とりあえず clean を使いましょう。 # vim: fileencoding=utf8 import re from google.appengine.api import users from google.appengine.ext.db import djangoforms try: from django import newforms as forms except …