[Django][TurboGears] Djangoはブラウザから送信された生データを扱えるところが強い。
Djangoの利点のひとつとして、ブラウザから送信された生データを扱えるという点があります。なので、
- ひとつのURLにおいて、押されたボタンに応じて処理を分ける。例えば、同じフォームの中に「更新」ボタンと「削除」ボタンがある場合など。
- スキーマヴァリデーションを、適用できるところから適用する。
といったことが可能で、自由度が高いです。
一方のTurboGearsでは、このようなことができません。しかしこれは、
- ひとつのURLでは、ひとつの処理だけを実行する。更新したければ更新のためのURLに遷移し、削除したければ削除のためのURLに遷移する。TurboGearsではMochiKitによるAjaxをサポートしているので(すなわちJavaScriptが使えるという前提があるので)、ブラウザ側で遷移するURLを変更すればよい。
- 個々の入力値の異常がすべてなくなったあとで初めて、スキーマヴァリデータは適用できるものである。
という思想があるからだと思われます。
実際の開発にどちらの(あるいはまた別の)フレームワークを使うか決めるときは、上記のことに留意した方がいいと思われます。