在哪里' avatar_set'在askbot中定义的用户方法?

时间:2014-05-26 09:40:47

标签: python django askbot

这里是/ askbot / models文件夹中__init__.py文件的一部分:

def user_update_avatar_type(self):
"""counts number of custom avatars
and if zero, sets avatar_type to False,
True otherwise. The method is called only if
avatar application is installed.
Saves the object.
"""

if 'avatar' in django_settings.INSTALLED_APPS:
    if self.avatar_set.count() > 0:
        self.avatar_type = 'a'
    else:
        self.avatar_type = _check_gravatar(self.gravatar)
else:
        self.avatar_type = _check_gravatar(self.gravatar)
self.save()

正如你所看到的,在某些时候它会调用self。 avatar_set .count(),我相信它应该是一个方法,或者来自/ Django / Contrib /的用户类auth或通过User_add_to_class方法添加,就像__init__.py文件中的许多其他方法一样

但我似乎无法找到这个“avatar_set”的地方。方法已定义。

由于

1 个答案:

答案 0 :(得分:0)

这是一种反向关系,当您定义指向模型的ForeignKey时,Django会自动添加该关系。请参阅the queries documentation