![](/img/trans.png)
[英]How to get the foreignKey related primary key (pk) in the same model in django?
[英]how to get the count of model related by foreignkey
說我有兩個模型發布和評論。 我想通過foriegnkey得到與帖子相關的評論數。 我試圖按評論順序列出帖子。 但我不知道如何得到與每篇文章相關的評論數。
class Comment(models.Model):
post = models.ForeignKey(Post, on_delete=models.CASCADE)
class Post(models.Model):
title = models.CharField(max_length=100)
並在views.py中
class PostListView(ListView):
model = Post
template_name = 'community/home.html' # <app>/<model>_<viewtype>.html
context_object_name = 'posts'
paginate_by = 4
#ordering = ['-#comment'] #how do I do this one?hmm
我想你需要這樣的東西:
post_pks = Post.objects.all().values('pk', flat=True)
post_comments = {}
for pk in post_pks:
sorted_comments = list(Comment.objects.filter(post_id=pk).ordered_by('-pk'))
post_comments[pk] = sorted_comments
首先,我獲取post pks並循環它們以獲取與它們相關的所有注釋。 這些注釋根據它們的pk排序,我創建了一個字典,其中包含關鍵字post pks和values注釋實例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.