0
0 комментариев

Подключил django-taggit к блогу. Хочу вывести определенный набор тегов под каждой статьей, используя {{ article.tags.names }}. В шаблоне — получаю список тэгов под статьей ['linux', 'python', 'english']. Как можно исправить это?

views.py:

def index(request):
 lastet_articles_list = Article.objects.order_by('-pub_date')
 list_of_tags = []
 for obj in lastet_articles_list:
    list_of_tags += obj.tags.names()
 list_of_tags = list(set(list_of_tags))
 context = {
    'lastet_articles_list': lastet_articles_list,
    'list_of_tags': list_of_tags,
 }
 return render(request, 'article/index.html', context)

(list_of_tags здесь использую, чтобы просто вывести имеющиеся тэги на сайте)

index.html:

<div class="col-md-6 col-md-offset-3">
    {% if lastet_articles_list %}
        {% for article in lastet_articles_list %}
            <div class="post-preview">
                <a href="/article/{{ article.id }}/">{{ article.title }}</a>
                <p class="post-meta">{{ article.tags.names }}</p>
                <p class="post-meta">Posted {{ article.pub_date }}</p>
            </div>
            <hr>
        {% endfor %}
    {% endif %}
</div>

models.py:

from taggit.managers import TaggableManager
 
 
class Article(models.Model):
 title = models.CharField(max_length=50)
 pub_date = models.DateTimeField('date published')
 text = models.TextField()
 tags = TaggableManager()

Изменен статус публикации
Добавить комментарий