我有一个用户可以创建活动的应用。创建该事件后,会有一个指向事件的链接,该事件应该转到事件详细信息页面。
href看起来像这样:
<a href="/events/view/{{event.event_name}}">Event Details </a>
所以示例网址如下所示:
http://www.example.com/events/view/Food%20Drive%20LA
%20给了我一个问题,所以我无法用空格渲染网址。我认为我的正则表达式在我的事件urls.py中是不正确的:
url(r'^view/(?P<event_name>[\w%20+])$', views.event_details, name='event_details'),
这是我的views.py:
def event_details(request, event_name):
event_name = event_name
#...
return render_to_response('events/event_details.html')
这可能是什么问题?
答案 0 :(得分:4)
不要担心URL中的空间百分比编码,在django url配置级别上继续将其视为通常的空间:
^view/(?P<event_name>[\w\s]+)$
另见:
答案 1 :(得分:2)
%20
只是一个空格,因此您的正则表达式应该与空格字符匹配,而不是文字%20
字符串。