2012-10-19 2 views
0

장고를 처음 사용하므로이 질문이 noobish 인 경우 유감입니다. 나는 GET에서 수신 장고 URL을 포맷 할이 같은있다 :이에장고 (Django) 형식 URL

example.com/search?title=Test&city=London&category=SomeCategory 
example.com/search?title=&city=London&category=SomeCategory 
example.com/search?title=&city=&category=SomeCategory 

:

example.com/search/Test/London/SomeCategory 
example.com/search/post/London/SomeCategory 
example.com/search/post/city/SomeCategory 

이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 이 양식을 어떻게 제출할 예정입니까?

감사합니다.

답변

5

그것은 다음과 같이 보일 것입니다 :

url(r'^search/(?P<title>\w+)/(?P<city>[\w -_]+)/(?P<category>[\w -_]+/$', 
    'name_of_view', name='name_of_view') 

을 ... 이러한 전망 :

def name_of_view(request, title, city, category): 
    ... 

양식 한 후, 다음과 같은 라인을 따라 보일 것이다

<form method="post" action="{% url name_of_view title city category %}"> 
    ... 
</form> 

요점은 일부 부품이 필요하지 않은 경우에 기본 인수를 제공해야한다는 것입니다 (예 : title 또는 01 귀하의 예에 따라). 당신은 URL에 그들을 공급해야합니다. 즉,보기에서 처리 할 때 특별한 값이 있는지 확인하고 값을 조건부로 처리해야합니다.

URL 패턴에서 regexes에 대해 약간의 추측 된 추측을했습니다. 필요한 경우 적용하십시오.