Jak zdobyć wszystkie (unikalne) znaczniki z django-taggit? Chciałbym wyświetlić wszystkie znaczniki na pasku bocznym. Obecnie jestem w stanie uzyskać wszystkie tagi dla konkretnego posta, ale teraz muszę uzyskać wszystkie unikalne tagi na całym blogu.Pobierz wszystkie tagi z taggit
kod w models.py:
from django.db import models
from taggit.managers import TaggableManager
# Create your models here.
class Post(models.Model):
title = models.CharField(max_length=100)
body = models.TextField()
created = models.DateTimeField()
tags = TaggableManager()
Dzięki. Czy powinienem dodać "tags = Tag.objects.all()" w Post? A jak to wyświetlić? – Robby
Masz na myśli jeden post, tj. Post = Post.objects.get (pk = 1)? Lub wszystkie posty (Post.objects.all())? –
@Vino Nie, nie powinieneś dodawać go do swojego modelu 'Post'. Edytuj bieżący widok, w którym chcesz wyświetlić pasek boczny i przekazać listę tagów do szablonu. 'Tag.objects.all()' jest standardowym sposobem pobierania obiektów poprzez ORM Django. Zajrzyj do [dokumentacja] (https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-objects), aby uzyskać więcej informacji. Jeśli potrzebujesz tylko nazw znaczników, użyj zrozumienia list: 'tag_names = [tag.name dla tagu w Tag.objects.all()]' –