3

私は Django の初心者です。

ただし、Django のディレクトリ構造については少し混乱しています。たとえば、さまざまな場所に非常に多くの models.py を書かなければならないため、将来的にプロジェクトを維持することが困難になると思われます。モデルディレクトリ内のすべてのモデルファイルを使用して、実際の MVC 構造のようにしたいと考えています。

models.py しか見てないように見える South を使用してそれを行うことは可能でしょうか、それとも別の移行ツールを検討する必要がありますか?

4

2 に答える 2

2

Django はコードを「アプリ」に編成します。そのため、個別の models.py ファイルがあり、各アプリが独自の Python パッケージを取得するため、それらすべてを 1 つのディレクトリに配置する方法はないと思います。

ただし、通常、コードを構成する方法は、すべてのコードに対して 1 つ (大規模なプロジェクトの場合は数個) のアプリを用意することです。これは、1 つの models.py ファイルに必要な数のモデルを含めることができるためです。

South がその点で役立つとは思いませんが、移行の管理がはるかに簡単になるので、強くお勧めします。

于 2012-05-14T04:59:42.677 に答える
2

すべてのモデルを 1 か所に配置するという規定が django にあるとは思いません。また、すべてを 1 か所に配置するのもよくありません。各アプリには独自の DB スキーマがあり、再利用性を満たすにはアプリを独立させる必要があるためです。再利用性を高めるため、モデルを互いに分離し、アプリに接続することをお勧めします。

南はこれを満たしていません。ur Db migrations n フィクスチャを追跡するだけです。

DB スキーマがどれほど完璧に設計されていても、ある時点で南が見えてきます。

于 2012-05-14T07:25:19.820 に答える