Djangoアプリで静的ファイルの配置方法

2009-11-20
このエントリーをはてなブックマークに追加

RubyonRailsでいうところの「public」に相当するフォルダがないので、どこに配置したらいいものかとものすごい悩んだんです。

で、urls.pyに以下を追記

(r’^common/(?P<path>.*)$’, ‘django.views.static.serve’, {‘document_root’: ‘/path/to/common’}),

上記の例だと、/path/to/commonの中にbase.cssっていう静的ファイルを置いておくとhttp://127.0.0.1:8000/common/base.cssというURLでCSSにアクセスできます。

まぁ静的ファイルはアプリケーション内には配置しない、というのが正解なんでしょうけどね。

Tags: ,

Pythonのパッケージ管理をeasy_installを使って容易にする

2009-11-19
このエントリーをはてなブックマークに追加

ここからez_setupをダウンロードします。
で、ダウンロードしたez_setup.pyを実行すると、easy_installがインストールされます。

wget http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py

これはRubyでいうところのgemでして、パッケージ管理をしてくれるツールです。

easy_install mysql-python

これでPythonとMySQLをつなぐ準備もできました。

python
import MySQLdb

でエラーがでなければ無事にインストールされています。大文字小文字をきちんと識別します。ハセテツは全部小文字で打ってエラーがでてしまい、インストールしくじったかと焦りました。

Windowsだと、easy_installがどうも動いてくれません。コンパイルにVS2003が必要だとか。。。

疲れたのでWindows用のバイナリを使いました。

Tags:

PHPの三項演算子

2009-11-16
このエントリーをはてなブックマークに追加

よく「スパゲッティの元だ」みたいな扱われ方をしますが、三項演算子はスパゲッティとは関係ないんじゃないかなぁと個人的には思うわけですよ。

確かに多用し過ぎると可読性が著しく下がりますが、それがイコールスパゲッティになるとは思っていません。

やっぱり書く人に依存、っていうことですよね。

$_page = (is_numeric($_GET[“page”]))? $_GET[“page”]: 1;

このまま使ってはいけない例ですが、

「pageっていうGETのパラメータが数値なら$_pageにはその値、数値じゃないなら$_pageには1を代入しなさい」

っていう内容です。

if(is_numeric($_GET[“page”])){
    $_page = $_GET[“page”];
}else{
    $_page = 1;
}

と同じ結果ですね。

Tags: