Làm thế nào để có được tất cả các thẻ (duy nhất) từ django-taggit? Tôi muốn hiển thị tất cả các thẻ trong thanh bên. Hiện tại tôi có thể nhận tất cả các thẻ cho một bài đăng cụ thể, nhưng bây giờ tôi cần phải có tất cả các thẻ duy nhất trong toàn bộ blog.Nhận tất cả các thẻ từ taggit
mã trong 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()
Cảm ơn. Tôi có nên thêm "thẻ = Tag.objects.all()" trong Bài đăng không? Và làm thế nào để hiển thị nó? – Robby
Ý của bạn là cho một bài đăng, tức là bài đăng = Post.objects.get (pk = 1)? Hoặc tất cả các bài đăng (Post.objects.all())? –
@Vino Không, bạn không nên thêm nó vào mô hình 'Đăng' của mình. Chỉnh sửa chế độ xem hiện tại nơi bạn muốn hiển thị thanh bên và chuyển danh sách thẻ vào mẫu của bạn. 'Tag.objects.all()' là cách tiêu chuẩn để truy xuất các đối tượng thông qua ORM Django. Hãy xem [tài liệu] (https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-objects) để biết thêm chi tiết. Nếu bạn chỉ cần tên thẻ, hãy sử dụng danh sách hiểu: 'tag_names = [tag.name cho thẻ trong Tag.objects.all()]' –