Django - DetailView 中的 DateTimeField
Django - DateTimeField in DetailView
如何在使用 DetailView 的 urls 中显示 DateTimeField 年份?
这是我的代码:
models.py
publish = models.DateTimeField(default=timezone.now)
views.py
class UpdatesDetail(DetailView):
template_name = 'Upadtes/detail.html'
model = Post
urls.py
url(r'(?P<slug>[-\w]+)$', UpdatesDetail.as_view(), name='updates-detail'),
现在我的 url 看起来像这样:127.0.0.1/this-is-just-test
,但我希望我的 url 像这样 127.0.0.1/2017/09/17/this-is-just-test
。我该怎么做?
感谢帮助!
您可以传递 year
、month
和 day
的参数以及 slug
url(r'(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/(?P<day>[0-9]{2})/(?P<slug>[-\w]+)$', AktualnosciDetail.as_view(), name='aktualnosci-detail'),
在html
<a href="{% url 'aktualnosci-detail' year=post.publish.year month=post.publish.month day=post.publish.day slug=post.slug %}"
我在 official documentation 中找到了很好的例子。波兹德拉维亚姆 :)
如何在使用 DetailView 的 urls 中显示 DateTimeField 年份?
这是我的代码:
models.py
publish = models.DateTimeField(default=timezone.now)
views.py
class UpdatesDetail(DetailView):
template_name = 'Upadtes/detail.html'
model = Post
urls.py
url(r'(?P<slug>[-\w]+)$', UpdatesDetail.as_view(), name='updates-detail'),
现在我的 url 看起来像这样:127.0.0.1/this-is-just-test
,但我希望我的 url 像这样 127.0.0.1/2017/09/17/this-is-just-test
。我该怎么做?
感谢帮助!
您可以传递 year
、month
和 day
的参数以及 slug
url(r'(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/(?P<day>[0-9]{2})/(?P<slug>[-\w]+)$', AktualnosciDetail.as_view(), name='aktualnosci-detail'),
在html
<a href="{% url 'aktualnosci-detail' year=post.publish.year month=post.publish.month day=post.publish.day slug=post.slug %}"
我在 official documentation 中找到了很好的例子。波兹德拉维亚姆 :)