Django:如何实例化RelatedManager对象?

时间:2018-03-28 03:47:10

标签: python django model

假设我有两个modelsBookAuthor

如果我现在添加ForeignKey fieldBook将其连接到Author,并实例化Book object - 那么我也可以通过Book object访问Author object它所连接的book_set(如果没有指定related_name,则通过。Related Manager object。根据我对阅读文档的理解,此访问权限通过Author object上的RelatedManager-object提供。

object何时创建?或者它在每个Author object上已经是Book,但在实例化新的Book object?时会连接到每个Book对象?如果是这样,它如何与birthday_file = open('birthdays_dict.dat','ab')

连接

据我所知,这在文档中没有提及。

在文档中:

  

如果模型具有ForeignKey,则外键模型的实例将   有权访问返回第一个实例的Manager   模型。

1 个答案:

答案 0 :(得分:0)

你可以问Django,它会给你一些曲目:

>>> Author.book_set
<django.db.models.fields.related_descriptors.ReverseManyToOneDescriptor object at 0x7f41aa1920f0>
>>> Author.objects.first().book_set
<django.db.models.fields.related_descriptors.create_reverse_many_to_one_manager.<locals>.RelatedManager object at 0x7f41a9e46828>