2014-12-05 135 views
1

我有一個應用程序,用戶可以在其中創建事件。一旦創建該事件,就會有一個指向事件詳細信息頁面的鏈接。Url在Django 1.7當Url包含空格

在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') 

可能是什麼這裏的問題?

回答

4

不要擔心百分號編碼在URL中的空間,在Django的URL配置水平繼續思考它作爲一個通常的空間:

^view/(?P<event_name>[\w\s]+)$ 

另見:

2

%20只是一個空格,所以你的正則表達式應該匹配一個空格字符,而不是字符串%20