2017-05-27 7 views
2

私はstackoverflowの上の他の質問(When to create a new app (with startapp) in Django?を)見てトピックに関するいくつかのスライドを読んで、まだDjangoプロジェクトに新しいアプリを作成する際には少し混乱していますか?私は平均スタックから来て、私はDjangoを初めて使っています。いつDjangoプロジェクト構造内に新しいアプリケーションを作成しますか?

私は、次の4つの主要な機能を備えたWebアプリケーションを作成する場合:

他のユーザー

-uploadファイル

と-Chat

-Login

-REGISTER

これらは、独自のviews.py、urls.pyなどの4つの別々のアプリですか?または、1つのアプリを作成してアプリファイルを共有しますか?

Djangoのプロジェクトの「アプリケーション」が再利用可能なモジュールとして記述されているようだが、彼らは再利用可能ではありませんので、これらの機能は、一度だけ私の全体のWebアプリケーションで使用されるでしょうか?

私は2つの完全に独立したウェブサイトを構築したい場合は、私は2つの別々のDjangoのプロジェクトやその中の別のアプリケーションと1つのプロジェクトを作成しないし、そのような登録などのアプリを再利用するのでしょうか?

ただ、これを構造化する方法の周りに私の先をラップしようとしています。

以下

は、Djangoのポーリングチュートリアルからである:アプリの

プロジェクトプロジェクトとアプリの違いは何ですか?アプリは、ウェブログシステム、 パブリックレコードのデータベース、または単純な投票アプリケーションなど、何かを行うWeb アプリケーションです。プロジェクトとは、特定のウェブサイト向けの 設定とアプリのコレクションです。 プロジェクトには 複数のアプリが含まれます。アプリは複数のプロジェクトに置くことができます。

私が太字で書いた部分は、アプリの構造と分割の方法について私に非常に混乱させます。

何か助けていただければ幸いです。彼らはジャンゴに新しく追加されたとき

答えて

1

多くは、同じ質問を提起します。ちょうど私がdjangoバージョン1.9と1.10を使用しているので、バージョン< = 1.8を使用している場合は、いくつかのコンセプトが変更される可能性があります。ジャンゴで

あなたが頻繁にいくつかの他のモジュールで使用する必要があるモジュール用に別のアプリを作成することができます。あなたが必要とする4つの機能はすべて1つのアプリケーションで使用できますが、多くのアプリで便利なチャット機能が必要な場合は&サービスをサポートするか、チャットボットを作成します(ほとんどの人は異なるソースから自分のウェブサイトでchat sserviceを使用します)このような場合、特定の機能を複数使用している場合や、APIでチャットサービスを使用する相手を提供したい場合は、別のアプリを作成することをお勧めします。今、あなたが登録とログイン機能について話したら、django組み込みモジュールdjango.contrib.authで利用できるので、あなたはそのための単一のアプリケーションを作成することができます。 upload files機能については、チャットアプリケーションなどで使用することができますが、別のアプリケーションを作成する代わりに、同じフォーム、ビュー、モデルで実装することも、別のPythonスクリプトを作成して呼び出すこともできます継承または望ましい方法を使用して使用する場合は、いつでも表示またはモデル化できます。

関連する問題