[Django] Webサービスをリリース
2009年2月2日
【BBPlanet】(ビービープラネット と発音します)
http://it.bbplanet.jp/
いわゆるマッチングサイトというやつで・・・
1. お仕事を頼みたい企業/個人が、
「こういう案件があります、100万でどーですか?」
というような情報を入力。
2. その仕事に対して、会員が、見積を作成したり、
コンタクトしたりすることができる。
・・・という感じのサービスです。
一年稼動してましたが、この度Djangoで大幅リニューアルをしました。
ち・な・み に、ほぼほぼ皆さんどうでもいいと思いますが、
お仕事を発注する側は無料で、個人情報も多くは求められなく、
今はキャンペーンもやってたりするので、興味があれば、覗いていってくれると有難いです。
(お仕事を請ける側は有料です。)
てことで、宣伝でした。
Djangoのテンプレート継承の仕組みはとても良いと思いました。
1. 想定外の状況に強い
これで大丈夫だろうというレイアウトをしていて・・・
<body>
<div id="header">Header</div>
<div id="contents">{% block contents %}Contents{% endblock %}</div>
<div id="footer">Footer</div>
</body>
ほぼ大丈夫なところに、
ほんの一部のテンプレでdivタグそのものを書き換えないとダメになった場合に
<body>
<div id="header">Header</div>
{% block contents_tag %}
<div id="contents">{% block contents %}Contents{% endblock %}</div>
{% endblock %}
<div id="footer">Footer</div>
</body>
こんな風に、ちょっと多く切り分けたblockを設定すれば、他に影響無く解決する。
下手なテンプレの仕組みだと、if したりとか、そのために変数を入れたりとか、面倒になりがち。
2. テンプレートファイルが少なくて済む
部分テンプレートをひたすらincludeする地獄から抜けられる。
1ページ直すのに、何個ファイル開かせるんだよ、ということが無い。
もちろん、他にもあるんですが、特に気に入ったのはこの2点。
総じて、「テンプレートのレイアウトを失敗したコスト」を抑えられる仕組みなので、
設計を熟考するよりも「まぁいいや、困ったら考えよう」的な開発をするには超イイです。