Django 1.7 中的 Url 包含空格时的 Url

Mic*_*ith 3 python django django-urls django-views

我有一个应用程序,用户可以在其中创建事件。创建该事件后,就会有一个指向该事件的链接,该链接应该转到事件详细信息页面。

该 href 看起来像这样:

<a href="/events/view/{{event.event_name}}">Event Details </a> 
Run Code Online (Sandbox Code Playgroud)

因此示例 url 如下所示:

http://www.example.com/events/view/Food%20Drive%20LA
Run Code Online (Sandbox Code Playgroud)

%20 给我带来了问题,所以我无法渲染带有空格的网址。我认为我的事件 urls.py 中的正则表达式不正确:

url(r'^view/(?P<event_name>[\w%20+])$', views.event_details, name='event_details'),
Run Code Online (Sandbox Code Playgroud)

这是我的观点.py:

def event_details(request, event_name):
    event_name = event_name
    #...
    return render_to_response('events/event_details.html')
Run Code Online (Sandbox Code Playgroud)

这里可能有什么问题?

ale*_*cxe 6

不要担心 URL 中的空格百分比编码,在 django url 配置级别上继续将其视为常用空格:

^view/(?P<event_name>[\w\s]+)$
Run Code Online (Sandbox Code Playgroud)

另请参阅: