实现方法 写一个上下文处理器 context_processor.py:
from myblog.models import article def dates(request): dates = article.objects.datetimes('createtime', 'month', order='DESC') return {'dates': dates}
base页面:
{% regroup dates by year as dates_by_year %} <ul> {% for month in dates_by_year %} <!-- month 是一组月份列表 --> <li> {{ month.grouper }} 年 <!-- grouper 是组头,即某个月份列表的年份 --> <ul> {% for d in month.list %} <!-- 再循环显示该年份组下的月份列表即可 --> <li> {{ d |date:'m' }} 月 </li> {% endfor %} </ul> </li> {% endfor %} </ul>
时间是取出来了,到按月显示文章,接下来想法是通过url传递年份月份到视图函数,视图函数返回过滤后的文章。但是网上的例子看不懂,这就尴尬了 菜鸟一枚