本章節配套視頻教程:Python-Django手把手從零開發個人博客_哔哩哔哩_bilibili
內容型網站一般都會在文章詳情底部實現上一篇及下一篇的功能,這也是一個比較通用的功能,有兩種實現思路,一種是通過文章的id來實現,一種是基於文章的發布時間來實現!
一、通過文章id來實現上下篇
在views.py文件中的post_detail視圖函數中添加
prev_post = Post.objects.filter(id__lt=post_id).last() # 上一篇
next_post = Post.objects.filter(id__gt=post_id).first() # 下一篇
二、通過發布時間來實現上下篇
在views.py文件中的post_detail視圖函數中添加
date_prev_post = Post.objects.filter(add_date__lt=post.add_date).last()
date_next_post = Post.objects.filter(add_date__gt=post.add_date).first()
完整代碼如下:
def post_detail(request, post_id):
# 文章詳情頁
post = get_object_or_404(Po