私は Django の Web サイトでいくつかの例に従いましたが、Django がプロジェクトの一部を「アプリ」に分割することを望んでいるという考えを理解しています。
各「アプリ」には独自のモデルがあります。そのため、ユーザーがログインして一部のデータ (書籍のコレクションや著者のコレクションなど) を変更 (追加/編集/削除) できるようにするアプリを作成する場合は、そのためのアプリを作成する必要があります。
この場合、 と の 2 つのモデル クラス
を含む'アプリ'ブックを作成します。クラスはそのフィールドの 1 つとして.models.py
Book
Author
Book
author = models.ForeignKey(Author)
だからここに私の質問があります:
- 新しいアプリを作成した場合
app
、そのアプリのモデルに、同じアプリに存在しないモデルへの ForeignKey フィールドを含めることはできますapp
か? - 前述したように、ユーザーがログインできる資格情報「テーブル」が必要です。これはどのように達成できますか?ユーザーモデルで「ユーザー」のような新しい「アプリ」を開始する必要がありますか?
- 「自動インクリメント」、「一意でないインデックス」、「トリガー」などの MySQL 機能をこれらのモデルにどのように組み込むのですか? または、手動または MySQL コンソール/マネージャーを介して行う必要がありますか?