2

テンプレートから Django の日付ベースの汎用ビュー (具体的には object_detail) への URL を取得する簡単な方法はありますか?

このような URL conf が与えられた場合

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. もっと簡単な方法があるはずです

誰かがこれらのいずれかについて意見を持っていれば、それは大歓迎です

ありがとう

4

1 に答える 1

3

より簡単で良い方法は、BlogPost モデル内get_absolute_urlおよびテンプレート使用でこの逆を定義することです。{{blogpost.get_absolute_url}}

アップデート:

日付をmodels.DateFieldまたはmodels.DateTimeFieldに保存していると仮定すると、文字列変換は次の方法で実現できますdate.strftime("%Y/%b/%d").lower()

于 2010-01-22T09:28:05.297 に答える