Djangoアプリをプラグ可能にするにはどうすればよいですか?
-
03-07-2019 - |
質問
たとえば、さまざまなプロジェクトにドロップできるようにしたいブログアプリがあるが、ブログを常に他のモデルに関連付けたいとします。たとえば、ある場合には、ユーザーに関連付けたい場合があります。
site.com/someuser/blog
しかし、別のサイトでは、たとえば学校に関連付けたい:
site.com/someschool/blog
Blogアプリをプラグイン可能にする方法はありますか?プロジェクトにドロップするたびにモデルを再定義する(外部キーフィールドを追加する)必要がありませんか?
解決
ContentTypesフレームワークを調べてください。データベース内の任意のモデルにコメントを付けるために使用できるコメントアプリを作成するために使用しました(さまざまな理由で、標準のdjangoコメントアプリを使用したくありませんでした) 。
http://docs.djangoproject.com/en/dev/ ref / contrib / contenttypes /
他のヒント
アプリを再利用可能にするためのいくつかの重要な詳細があります。トピックに関するさらに重要なドキュメントセットの2つにリンクすることをお勧めします。
一般的な関係により、他のモデルへの外部キー。ただし、外部キーにリンクするオブジェクトのタイプを質問から明確にすることはできません。外部キーの関係は実際には一般的ではないと思われます。再利用可能なアプリである可能性のあるシステムの別の部分を見つけていないだけです。
所属していません StackOverflow