Django / ListView /使用get_context_data来计算json变量中的所有键

tjrkku2a  于 2022-12-20  发布在  Go
关注(0)|答案(1)|浏览(90)

我想在我的Link.html中返回allLinks变量(json)中包含的链接数。到目前为止,我想我误解了get_context_data的用法,以及如何将链接总数传递给context['CountLink']。
使用当前代码,我得到:
研究列表

terre : <QuerySet [<Post: terre>, <Post: océan>]> Links
océan : <QuerySet [<Post: terre>, <Post: océan>]> Links

Models.py

class Post(models.Model):
    title = models.CharField(max_length=255)
    url = models.URLField(max_length=255)
    allLinks = models.JSONField()

    def __str__(self):
        return self.title

views.py
类链接视图(列表视图):模型=帖子模板名称= 'link.html'

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    context['CountLink'] = Post.objects.all()
    return context

Link.html

{% for post in object_list %}
  <li>
    <a href="{% url 'DetailLink' post.pk %}">{{ post.title }}</a> :
    {{CountLink}} Links
  </li>
  {% endfor %}
nnsrf1az

nnsrf1az1#

您可以使用count()在您的情况下,我认为您需要类似的东西,它将返回Post模型对象的计数

context['CountLink'] = Post.objects.all().count()

有关详细信息,请查看this

相关问题