2016-08-24 32 views
5

Mam adres URL, który pobiera parametry zapytania, które mogą zawierać spacje. Wiem, że to wygląda całkiem prosto, ale mój regex nie działa dla mnie.Parametr zapytania django z przestrzenią

Oto moja definicja wzorca URL:

url(
    r'^item_info_details_view/(?P<itemno>[\w \/&-]+)/$', 
    'purchasing.views.item_info_details_view'), 

itemno może być wyrażenie takie jak FAX MODEM która zawiera spację.

Jednak, gdy mijam taki parametr do niego, adres URL w przeglądarce jest

http://localhost/item_info_details_view/FAX%20MODEM/ 

i wyświetla te informacje debugowania:

Using the URLconf defined in urls, Django tried these URL patterns, in this order: 
^$ 
The current URL, item_info/FAX MODEM/, didn't match any of these. 
+1

Problem nie wydaje się być miejsce, ale fakt, że masz „item_info_details_view” w URLconf ale „item_info” w rzeczywistej zawartości. –

+0

Piękne! Przybiłeś to! Wielkie dzięki, Daniel, szkoda, że ​​sam nie potrafię rozpoznać tego głupiego błędu! Zapraszam do zamieszczenia poniżej odpowiedzi, a ja ją przyjmuję. Zasadniczo, dodanie '' jako części regex url działa, dziękuję bardzo! –

+1

zapraszam do zamieszczenia tam odpowiedzi, a ja ją przyjmuję, wielkie dzięki, Daniel! :) –

Odpowiedz

0

Problem nie wydaje się być przestrzeń, ale fakt, że masz "item_info_details_view" w urlconf, ale "item_info" w rzeczywistym adresie URL.

(jako napisany przez @ Daniel-Roseman)