初心者なので、何がどこに属しているかを理解しようとしています。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']
上記の行になると、答えは No になると思いますか?