Djangoアプリケーション戦略


14

私は少し最近成長しているDjangoプロジェクトにしばらく取り組んできました。取り扱いを容易にするためにどの戦略を使用するかについて少し考えてきました。入力を行いたいことの1つは、アプリケーションをいくつかの小さなアプリケーションに分割する必要があるかどうかです。それにより、ビューとモデルファイルが小さくなり、懸念事項の一部が分離されます。

これに悩まされることの1つは、私のアプリケーションでは、アプリケーション間で使用されるいくつかのヘルパーメソッドがあることです。また、一部のモデルはアプリケーション間で共有/使用する必要があります。これは理にかなっていますか?これは、アプリをいくつかの小さなアプリに分割することで達成したいと思っていた懸念の分離にはうまくいきません。アプリケーション間でヘルパーメソッド、モデルなどを共有するための良いアプローチは何でしょうか?

回答:


11

プロジェクトが大きくなっている場合は、アプリを再利用可能なモジュールと考えてください。アプリ間で共有される機能を独自のアプリに分離できます。

この問題に関するさらなる考えについては、以下の議論を参照してください。


アプリがプロジェクトナビゲーションにいくつかのメニュー項目を追加する必要がある場合はどうなりますか?stackoverflow.com/questions/23405610
utapyngo 14年

2

base/は、ビューや共有アイテムの瞬間がないアプリを作成するのが好きです。

モデルが複数のアプリに分散している場合に発生する可能性のある問題の1つは、循環インポートです。これを回避するには、文字列を使用して(foo = ForeignKey("someapp.Foo")ではなくfoo = ForeignKey(someapp.models.Foo))他のモデルを参照します。Djangoでは、このような文字列をより多くの場所で使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.