共通機能を外部プロジェクトにしてみる

共通機能を外部プロジェクトにしてみる

複数の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
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。