我想在视图函数中重用默认模板标记的代码,因为我可以在视图中使用默认过滤器。
from django.template.defaultfilters import default, urlencode, iriencode
title = default(title_str, "N/A")
..
这是我的 url.py
urlpatterns = patterns("",
url(r"^artist/(?P<slug>[-\w]+)/$", "app_name.views.artist_details", name="artist_details"),
)
当我在视图中使用reverse
时,
reverse("artist_details", args=[artist.slug])
app crashed bcoz slug
有日语,它会出现Exception Type: NoReverseMatch
错误,
那么我可以在我的 view.py 中使用{% url %}
的代码或其他任何建议吗?
[更新]
谢谢!
答案 0 :(得分:1)
您需要reverse
答案 1 :(得分:0)
您需要在视图中执行此操作:
from django.utils.encoding import force_unicode, iri_to_uri
reverse("artist_details",args=[force_unicode(iri_to_uri(artist.slug))])