アプリを開発しているときに、多少の関連性がある多くのモデルを書き留めて書くのが簡単なことがあります。次に、問題はどのようにすべてのモデルを与えられたウェブサイトをレイアウトするかです。あなたは次のモデルを持っていると言う:Djangoサイトのアーキテクチャ
models: M1, M2, ..., M60
あなたは、あなたがアプリケーションにそれらを分割することができます実現するために来る:
apps: AP1, AP2, ..., AP12
その後、しばらくした後、あなたは異なるデータベースで、さまざまなプロジェクトを持って実現するかもしれません、 SEMAを持っている方がよい場合など、ビジネス・ロジック、観客をターゲットに、(例えば、1つのサイトの下に宿泊、スキー、機器のレンタル、eコマースなどすべてを持っているサイト)
projects: P1, P2, P3
質問です1つのプロジェクト内の関連性のないアプリや別のプロジェクトのグループ関連アプリ
Site
|
P1 - P2 - P3
| ...
----------------
| | | |
AP1 AP2 AP3 AP4
| ...
---------------------
| | | | |
M1 M2 M3 M4 M5
OR:
Site
|
Solo_Project
|
----------------
| | | |
AP1 AP2 AP3 AP4
| ...
---------------------
| | | | |
M1 M2 M3 M4 M5
かつての場合は、どのように1は、settings.pyは、通常、(データベースルーティングの世話をROOT_URLCONF、他のすべての設定を指定するメタsettings.pyを持つべきですなど)
Djangoのドキュメント以外では、私はDjango tips: layout out an applicationの有用な(まだ不十分な)読みを見つけました。
プロジェクトのアーキテクチャは、プロジェクトを管理しやすくするためのツールです。最適な方法は、プロジェクトとチームのワークフローと環境設定によって異なります。あなたのプロジェクトや組織を詳しく見ていない限り、それは完全に意見に基づくものではないとは言いません。 – knbk