我正在打印个人资料页所有者拥有的所有关注者。下表显示了以下关系:
class Following(models.Model):
target = models.ForeignKey('User', related_name='followers', on_delete=models.CASCADE, null=True)
follower = models.ForeignKey('User', related_name='targets', on_delete=models.CASCADE, null=True)
def __str__(self):
return '{} is followed by {}'.format(self.target, self.follower)
我也在使用django的auth用户模型。
视图.py
class FollowersView(DetailView):
model = User
slug_field = 'username'
template_name = 'profile/followers.html'
def get_profile_followers(user):
return user.followers.all()
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context["follower_list"] = get_profile_followers(self.object) # self.object is user profile
return context
在模板中,我正在执行以下操作:
{% for follower in follower_list %}
<h1>{{ follower }}</h1>
{% endfor %}
但是,我明白了:克里斯后面跟着约翰。这是正确的,chris后面跟着john,但是,我只想显示john的用户和john的属性,比如
avatar
我是说,
follower_count
,等等。
User
桌子。我该怎么做呢?