我正在建立一個簡單的博客應用程式,我正試圖實作一個功能。
其中,如果一個用戶用post標簽-tag1, tag2對一個帖子進行評論。
我將檢索用戶在帖子上評論的標簽,并試圖計算用戶用同一標簽評論帖子的次數
就像我想顯示的那樣:-
| 標簽名稱 | 使用次數 | 使用次數 | 。
|---|---|---|
| tag1 | 16次 |
此表顯示 :- 用戶用前一個帖子中使用的標簽對一個帖子進行了評論。
例如 :-
一個名為 "user_1 "的新用戶對一個帶有tag5, tag6, tag8標簽的帖子進行了評論,那么一個查詢將顯示user_1在tag5中評論了1次,在tag6中1次和tag8中1次。
其余的我將在以后進行。
models.py
class BlogPost(models.Model)。
user = models.ForeinKey(User, on_delete=models.CASCADE)
title = models.CharField(max_length=30)
tags = TaggableManager()
class Comment(models.Model)。
comment_by = models.ForeignKey(User, on_delete=models.CASCADE)
on_post = models.ForeignKey(BlogPost, on_delete=models.CASCADE)
views.py
def examplePage(request)。
query = Tag.objects.filter(blogpost__user=request.user)
context = {'query': query}.
return render(request, 'examplePage.html'/span>, context)
這個視圖顯示了在帖子中使用的標簽,這些標簽被request.user評論為:-
tag1
tag2
tag2
但我不知道,我如何注釋,以便它可以顯示由request.user評論的帖子上使用的標簽數量,如上表。
如果有任何幫助,我將非常感激。謝謝你。
注意 :- 我正在使用Django-Taggit進行Tags(TaggableManager()在BlogPost Model)
uj5u.com熱心網友回復:
我認為使用blogpost__user會導致標簽被BlogPost的作者而不是評論者過濾,所以我認為你應該使用blogpost__comment__comment_by?
有了它,你可以像這樣對標簽的數量進行注釋:
Tag.objects.filter(
blogpost__comment__comment_by=request.user
).values(
"name'" 。
).注釋(
times_used=Count('name')
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/323509.html
標籤:
