1
検索バーをクリックするとランダムなタグの提案をユーザーに与えたいと思います。これまでのところ私のコードは、私が望むものを返すが、Post IEに割り当てられていないタグも返す。投稿を削除したりタグを削除したりすると、それらのタグはまだ提案に表示されている。Django-Taggitは、投稿に割り当てられていないものをスキップするランダムタグを取得します。
# Get the suggestions (In View)
suggestions = Tag.objects.all().distinct().order_by('?')[:5]
# Model
class Post(models.Model):
title = models.CharField(max_length=256)
disclaimer = models.CharField(max_length=256, blank=True)
BLOGS = 'blogs'
APPLICATIONS = 'applications'
GAMES = 'games'
WEBSITES = 'websites'
GALLERY = 'gallery'
PRIMARY_CHOICES = (
(BLOGS, 'Blogs'),
(APPLICATIONS, 'Applications'),
(GAMES, 'Games'),
(WEBSITES, 'Websites'),
)
content_type = models.CharField(max_length=256, choices=PRIMARY_CHOICES, default=BLOGS)
screenshot = models.CharField(max_length=256, blank=True)
tags = TaggableManager()
body = RichTextField()
date_posted = models.DateTimeField(default=datetime.now)
date_edited = models.DateTimeField(blank=True, null=True)
visible = models.BooleanField(default=True)
nsfw = models.BooleanField()
allow_comments = models.BooleanField(default=True)
files = models.ManyToManyField(File, blank=True)
def __str__(self):
if (self.visible == False):
return '(Hidden) ' + self.title + ' in ' + self.content_type
return self.title + ' in ' + self.content_type
2番目のビットは、私が望むことをしますが、代わりにスペースを持つタグを返す理由と、なぜ小文字しか返さないのか知っていますか? – Anon
tag.slugをtag.nameに置き換えて気にしないでください。 – Anon