作为一个新手,我正在努力弄清楚什么属于哪里。我有一个ListView
列出系统中所有用户的方法,它包括一个get_queryset
方法 - 类似于:
def get_queryset(self):
users = []
for user in User.objects.all():
a_user = {}
a_user['username'] = user.username
a_user['full_name'] = user.get_full_name()
a_user['num_of_friends'] = len(user.friends.all())
a_user['phone_num'] = user.get_profile().phone_num
a_user['has_subscription'] = bool(Subscription.objects.filter(subscriber=self.request.user))
users.append(a_user)
return users
因此,我不是返回用户的查询集,而是根据每个用户的各种选择属性制作这个字典,模板设计者得到的仅限于我认为他们应该拥有的。
将用户对象传递给模板并让模板编写者从他们那里得到他们需要的任何东西是更好的做法吗?我想答案是肯定的。
但是,当谈到a_user['has_subscription']
上面的那一行时,我认为答案是否?