我怀疑如何根据现有对象制作链接日期列表,首先我有一个带有DateTimeField的模型,它存储了添加对象的日期和时间。
我有类似的东西:
| PK |名称|日期
| 1 | name 1 | 2016-08-02 16:14:30.405305
| 2 | name 2 | 2016-08-02 16:15:30.405305
| 3 | name 3 | 2016-08-03 16:46:29.532976
| 4 | name 4 | 2016-08-04 16:46:29.532976
我有一些记录在同一天但不同的时间,我想要的是制作一个只显示独特日子的列表:
2016年8月2日
2016年8月3日
2016-08-04
还因为我正在使用CBV DayArchiveView我想添加一个链接到这些元素,每天用这样的网址模式列出它们:
url(r'^archive/(?P<year>[0-9]{4})/(?P<month>[-\w]+)/(?P<day>[0-9]+)/$', ArticleDayArchiveView.as_view(), name="archive_day"),
事实是,我不知道如何实现这一目标,你能帮助我吗?
答案 0 :(得分:1)
提取唯一日期
instances = YourModel.objects.all()
unique_dates = list(set(map(lambda x: x.date.strftime("%Y-%m-%d"), instances)))
关于列出它们,您的网址模式看起来不错。您需要定义一个视图以便检索它们并与该URL连接。
<强>更新强>:
如果您想订购它们,只需:
sorted_dates = sorted(unique_dates)