Ian Lewis Ian Lewis is a web developer living in Tokyo Japan. His current interests are in Django, python, alternative databases and rapid web application development.
About Me...

Python 例外のひどい仕様

Pythonの例外オブジェクトは苦手です。例外のメッセージが何でもasciiとして扱われることがひどい。 In [1]: t = ValueError("テスト".decode("utf8")) In [2]: print t --------------------------------------------------------------------------- UnicodeEncodeError Traceback (most recent call last) /home/ian/src/project/<ipython console> in <module>() UnicodeEncodeError: 'ascii' codec can't encode characte[...]

Django 勉強会 Disc. 8 参加して来た

。。というか、ハンズオンC Django on GAE のセッションを担当させていただきました。まさかこんなに人気があると思わなかったけど、皆さんはびっくりするほど勢いを持ってきて、感動しました。 Pollsというアプリを動かすまで出来た人がほとんどで、すごくうれしい思い出ができました。 みなさんお疲れ様でした!

Django勉強会Disc.8の資料をRSTにした

id:tokibitoが見つけてくれた rst2pdf を使ってid:tmatsuo とDjango勉強会Disc.8 ハンズオンC の資料をPDFにした。 ほとんど id:tokibitoと同じやり方でPDFを吐き出したけど、問題点が二つあった。 rst2pdf をたたくと ja.jsonを指定する上、font-directoryも指定しないと日本語が化ける。Ubuntuの場合 VL- Gothicで充分なので、 > rst2pdf -s ja.json,perldoc.json --font- folder="/usr/share/fonts/truetype/vlgothic" django-hack-a-thon-get- handson.part2.rst 問題点の二つ目は、rst2pdfの wordWrapが段落に対して、一つのフラグメント(?)しか扱えないよ[...]

Google Appengine SDK 1.1.8がリリースされました

Appengineの新しいリリース1.1.8が来た。色な面白いところがあるけど、仲居さん(id:Voluntas)のブログポストからピックアップする。 > * ByteStringProperty が実装 気軽に使える BlobProperty > * UserProperty に auto_current_user / auto_current_user_add が追加。 > * DateTimeProperty と同じ動作すると思われ。 > * PolyModel が追加されました。 > * Django の継承と一緒、使い方は簡単です。 > > from google.appengine.ext import db > > from google.appengine.ext.db import polymodel > > [...]

Django 勉強会 Disc.7

昨日、アクセンス・テクノロジーの東京本社にDjango 勉強会 Disc.7に参加しに行ってきました。 ### GeoDjango 最初は松尾さんのgeodjangoの話。 * GeoDjangoのDBサポートはpostgisが一番対応してます。 * Adminで地形のエリア編集などは地図のJavascriptアプリで楽々 * GeoDjangoのGeoManagerでfilter(field__poly_contains=point)ができる。 ### ContentType 次は増田さんのGenericForeignKeyの話と、次に岡野さんのContentTypeの話 * GenericForeignKeyはContentTypeとobject_idのフィールドのラッパーに過ぎない * ContentTypeでModelの処理が結構一般的にで[...]

Django サイトマップ フレームワーク

Django sitemap frameworkを使うのが簡単過ぎる。下記のようにサイトマップクラスを作って、urls.pyに登録するだけ。サイトマップに載 るURLを取るのに、サイトマップフレームワークが自分が作ったクラスのitems()を呼び出して、アイテムのget_absolute_url()を順番に呼び出 す感じ。 #### models.py from django.db import models ... class Entry(models.Model): ... @permalink def get_absolute_url(self): return ... ... #### sitemap.py from django.contrib.sitemaps import Sitemap from mysite[...]

DjangoGraphviz

今日、Djangoアプリケーションのモデルの構成を分かりやすく見たくて、モデル構成からGraphviz ドットファイルを生成できれば、いいなと思って、DjangoGraphvizを見つけた。ただ、ここからダウンロードして、こう実行する。 PYTHONPATH=$PYTHONPATH:. DJANGO_SETTINGS_MODULE=appmodule.settings python modelviz.py applabel > app.dot dot app.dot -Tpng app.png 最近作った django-lifestreamのモデル構成イメージを作るとこれがでる。 よくできてるね。

Python温泉

先週末、  Python温泉第4回に行ってきました。Python温泉は金土日なんですけど、前回と同じく土日、1泊にやってきました。今回は集中できたけど、前回 より友達つくりや、会話ができてなかったという感覚だった。いろいろ寂しかった。でも、ビープラウドのid:tokibitoさんと、jQuery Internalsのdata()関数の実装や、feedparserや, Djangoの話をして、少し仲良くなった。ブログに俺について何も書いてくれなかったけど ^^; Python温泉参加者のブログにまとめ(id:voluntasのまとめ, id:tokibitoのまとめ)が多いから、 まとめ: * すぐ転職がばれた * FriendFeedや、sweetcronみたいなlifestreamをdjangoで頑張って作った。(dlife) * 温泉一人で入って寂しかった。[...]

ウェブホスティング移動

最近PythonやDjangoの開発をだんだんやっていてる僕が、このサイトを新しいウェブホスティングプロバイダーに移動することにした。 今は Haswebという安いプロバイダーなんですけど、Pythonにあまり相性がよくないので、Pythonアプリをサーバーに動かすのが難しすぎる。 簡単なPython cgiを対応してるだけで、コンパイルもできないから、Pure Pythonライブラリしかインストールできない。 なので、PylonsがおすすめしてるWebfactionに移動することにした。 Django,Pylonsに結構やさしくて、ライブラリをコンパイルできるから、使いやすいと思ってる。 それで、このサイトでいろいろなPythonウェブアプリをだんだん作っていきたいと思ってる。