如何在django模板中访问django ManyToMany字段

时间:2018-12-25 08:49:17

标签: python django django-templates

我的模型中有一组属性,其中一个属性的类型为ManyToMany字段。我能够访问模板中的所有属性,而不是ManyToMany字段之一。

我尝试在模板中关注

{% for post in all_posts %}
{{ post.likes }}
{% endfor %} 

models.py

class Posts(models.Model):
title = models.CharField(max_length=250, blank=False)
content = models.CharField(max_length=15000,
                           help_text="Write Your thought here...")
creation_time = models.DateTimeField(auto_now_add=True, editable=False)
likes = models.ManyToManyField(User, blank=True, related_name='likes')

views.py

def home(request):
    template = loader.get_template('home.html')
    all_posts = Posts.objects.all()
     context = {
         'all_posts': all_posts,
     }
     return HttpResponse(template.render(context, request))

当我使用{{ post.likes }}时,页面上呈现的是auth.User.None

1 个答案:

答案 0 :(得分:1)

您必须遍历所选帖子的所有喜欢

尝试这样的事情:

{% for post in all_posts %}
    {% for like in post.likes.all %}
        {{ like }}
    {% endfor %}
{% endfor %}
相关问题