1. ホーム
  2. python

[解決済み] Django の世界では、プロジェクトとアプリはどう違うのでしょうか?

2023-05-20 04:37:40

質問

Djangoを使って初めて本格的なウェブサイトを作成しているのですが、プロジェクトとアプリの違いを理解するのにまだ苦労しています。

例えば、私のウェブサイトはスポーツニュースのウェブサイトで、記事、ランキング表、quot;備品と結果"などのセクションを含みます。

どのように解決するのですか?

A プロジェクト は、アプリケーション全体とそのすべての部分を指します。

アプリ とは、プロジェクトのサブモジュールのことです。これは自己完結しており、プロジェクトの他のアプリと絡み合っていないため、理論的には何の変更もせずに別のプロジェクトに取り込むことができます。 また アプリ は通常、独自の models.py (があります(実際には空かもしれません)。 これは、スタンドアロンのPythonモジュールと考えることができます。 単純なプロジェクトでは、1つのアプリしかないかもしれません。

この例では プロジェクト はウェブサイト全体です。これを構造化して アプリ があり、記事には アプリ はランキング表、そして アプリ を使用します。 もしそれらが相互に作用する必要があるならば、十分に文書化されたパブリッククラスとアクセッサメソッドを通してそれを行うのです。

心に留めておくべき主なことは、このレベルの アプリ . 実際には、すべて 1 つの プロジェクト であるため、やりすぎる意味はありませんが、2 つのアプリがどのように共依存しているかを念頭に置いてください。 1 つのアプリで 2 つの問題を解決していることが分かったら、2 つのアプリに分割してください。 2 つのアプリが互いに絡み合っていて、片方なしでは再利用できない場合は、それらを 1 つのアプリにまとめます。