【问题标题】:URL to date-based generic view in django template?django模板中基于日期的通用视图的URL?
【发布时间】:2010-01-22 05:28:23
【问题描述】:

有没有一种简单的方法可以从模板中获取 Django 基于日期的通用视图(特别是 object_detail)的 URL?

给定这样的 URL 配置

url(r'^posts/(?P<year>\d\d\d\d)/(?P<month>\d\d)/(?P<day>\d\d)/(?P<slug>[\w-]+)$', 'date_based.object_detail', detail_info, name='blog-post-detail')

我的理解是我需要做这样的事情

{% url blog_post_detail year=post.date.year.str,month=post.date.month,day=post.date.day,slug=post.slug %}

除此之外

  1. 年月日需要格式化为字符串
  2. 必须有更简单的方法

如果有人对其中任何一个提出意见,将不胜感激

谢谢

【问题讨论】:

    标签: django templates reverse django-generic-views


    【解决方案1】:

    更简单更好的方法是在 get_absolute_url 内的 BlogPost 模型中定义此反向,并在模板中使用 {{blogpost.get_absolute_url}}

    更新:

    假设你在models.DateField或models.DateTimeField中存储日期,则可以通过date.strftime("%Y/%b/%d").lower()实现字符串转换

    【讨论】:

      猜你喜欢
      • 2012-06-09
      • 2011-08-06
      • 2013-04-02
      • 2010-10-14
      • 2018-04-13
      • 2012-01-28
      • 2013-06-21
      • 2012-03-11
      • 1970-01-01
      相关资源
      最近更新 更多