共通機能を外部プロジェクトにしてみる
複数のDjangoプロジェクトに横断的なモジュール群、いわゆる独自フレームワークみたいなのを作って
Aptana上やGitで外部プロジェクトとして簡単に管理する方法をまとめてみた。
共通機能用プロジェクトを作成
テンプレート、STATICファイル、カスタムタグ、Model、View、urlsを
単一のディレクトリ下にまとめておく。
その際、テンプレートとSTATICファイルは
アプリケーション名でディレクトリを作り、入れておくこと
+framework
-hoge_application
+templates
+hoge_application
-index.html
+static
+hoge_application
-default.css
こうしておくことで、ファイル名の重複を避けられる。
Related(関連する)プロジェクトに設定
Aptana上、プロジェクトで右クリックしてプロパティから設定する。
これでエディタ上で赤アイコン(コンパイルエラー)が出ない
もしくはファイルをsite-packagesにコピーしておく手もあるが、
直すたびにいちいちコピーするのも面倒なので、Relatedにするのがいい。
設定変更
Djangoアプリケーションの追加と同様にINSTALLED_APPSに追加する。
必要ならURLSを書き換える(定義済みのファイルをincludeする形がラク)
ファイルのコピー
site-packagesにコピーする。
Aptanaから実行時には気にしなくてもいいかもしれないが、
Apache+WSGIで実行する際は必要(だと思う。実際に確かめたわけじゃない・・・・・・)
自分はコピー用のBATファイル(またはシェルスクリプト)を作った。
site-packages以下を直接変更するのは避けたかったので、
Aptanaから直接参照する設定にはしなかった。
(やろうと思えばできるはず)
最終更新:2013年01月22日 11:45