2

別のモデルのリストを属性として持つことができるdjangoモデルを作成しようとしています

def author:
    name = charfield...
    list_of_books = ______________

def book:
    name = charfield...

著者が自分の書いた本のリストを持てるようにしてほしい。また、本の著者リストに本を追加する方法を知りたいです。

私はforeignKeyを見てきましたが、1つのオブジェクトしか保持していないようです。

4

1 に答える 1

1

反対方向に ForeignKey を使用します。book には author への ForeignKey が含まれている必要があり、デフォルトで author には、その author に関連付けられているすべての本のリストを持つメンバー book_set が含まれます。

本に複数の著者を含めることができるようにする場合は、ManyToManyField の方が適しています。

特定の著者によるすべての本を表示するには、author.book_set.all() を使用します。

このページには、本、著者、および出版社を使用するデータベースの例が含まれています。著者と本の間の関係は、ManyToManyField として表されます。

于 2013-08-24T05:16:55.887 に答える