2016-10-26 6 views
0

(まだDjangoの初心者であることに留意してください)私は最初のDjango Appをしばらく作成しています。その中には、地理的エリアを表すモデルがあります。これは、そのモデルの各インスタンスがマップ上の別の領域を表す目的を持っていることを意味します。このアプリはOKです。Django-異なるアプリ間の関係を確立する方法は?

私はここで見つけることができる、ジャンゴ・フォーム・ビルダーと呼ばれる、私のプロジェクトに第二のアプリ、再利用可能なアプリ、を追加しました:

https://github.com/stephenmcd/django-forms-builder

このアプリでは、Django Adminのカスタムフォームを作成できます。しかし、彼らは自分のアプリから何かから「独立型」/「分離型」です。

2番目のアプリからのフォームから、自分のアプリのエリアモデルへの接続を確立したいので、特定のフォームをマップの特定のエリアに関連付けることができます。

1つのアプリしか使用していないので、これは本当に混乱しています。私は 'django-forms-builder'アプリでmodels.pyファイルを読んだことがあります。抽象的なので、モデル間の外部キー関係が成立していないようです。したがって、私は完全に失われてしまいます。 。

私の質問は、どのように異なるDjangoアプリケーション間の関係を確立するのですか?私はDjangoのコンセプト、これを達成するために学ぶことができるモデルの外部キー以外のアイデアがあるかもしれないと思っています。

+1

最初のアプリの地理的位置を表す各モデルのフォームのインスタンス(またはエントリ)をform_builderから取得しますか? – McAbra

+0

私は、「エリアごとに1つのフォーム」以上を追加する可能性を望んでいます。しかし、あなたの答えは間違いなく私をトラックに戻してくれました。私はここからadmin.TabularInlineアドオンを使ってこの詳細を作業しようとしています。私のアプリのadmin.pyファイルにあるので、複数のフォームをエリア。 –

答えて

1

非抽象モデルthereがあります。

from forms_builder.forms.models import Form 


class Location(models.Model): 
    ... 
    form = models.ForeignKey(Form, related_name='locations') 

あなたが複数の場所(私はそれはあなたが後にしている何を望む/推測)にフォームを作成し、関連付けることができますこの方法を:あなたは、特定の「場所」にフォームをバインドすることができるはずのものと

+0

それは私の問題を解決しました。また、管理者に領域を作成するときに、フォームを関連付けるか、またはポップアップウィンドウで今すぐフォームを作成するオプションが表示されます。お手伝いありがとう –

関連する問題