ビープラウドに転職してました


iMac で心地よく開発してます。

続きを読む

フォームにすでに入力されている値をテストする (オブジェクト更新用のビューをテスト)

オブジェクト更新用のビューのテストをするときに、フォームにすでに入力されている値をテスト
したいことがある。

>>> response = self.client.get('/update/1/')

response オブジェクトから、いかにフォームの初期値を取るかという問題。

続きを読む

FormSet を空の状態で提供する (オブジェクト作成用のビューで使える)

>>> HogeFormSet = modelformset_factory(Hoge)
>>> hoge_formset = HogeFormSet()

とすると、FormSet(ModelFormSet) が DB に保存されている既存のオブジェクトに束縛されて提供される。
この挙動はオブジェクトの新規作成をするビューで使うには好ましくない。
まっさらな状態の FormSet が欲しい。

続きを読む

Ubuntu で M2Crypto 使おうとしてハマった

Ubuntu で M2Crypto を使おうとしてハマった。

ImportError: /home/hirokiky/.virtualenvs/hogeenv/local/lib/python2.7/site-packages/M2Crypto/__m2crypto.so: undefined symbol: SSLv2_method

エラー文は上記のようなものがでた。

続きを読む

Django の FormSet で更新用のビュー作ろうとしてハマったことろ

Django の FormSet についてハマったメモ

ある更新用のビューに FormSet を使いたかった。更新用のビューなので、既存のオブジェクトがある場合は FormSet をそれに対して束縛してやる必要があった。

環境

Django==1.4.1

解法

下記ブログ参考に。

modelformset_factory を使えば FormSet に queryset が使えるので、これに束縛するオブジェクト (クエリセット) を与えてやれば良い

続きを読む

WSGIからDjangoの流れを理解する

WSGIからの流れを大まかに掴めたのでまとめたい。

かなり大まかには、この画像を念頭におけばいいと思う。
今回はDjango1.4を対象にしている。

注意

流れを理解するために読むべきソースコードへのリンクと、その順番をまとめてる。
読みやすさはあんまり考慮してないし、細かな解説はしてない。
ソースコードの読むべき順番をメモっておきたいだけ。

続きを読む

Django1.4のクラスベースビューにおけるHEADリクエストの処理について。

django.views.generic.base.TemplateViewなどのクラスベースビューの実装を見てみると、head()メソッドが書かれていないように見える。しかしHEADリクエストには対応してる、という話。

「TemplateViewはHEAD対応していない」的なお話を聞くことがあるから書いておく。

続きを読む