2015-11-20 20 views
0

我試圖創建的視圖GET參數HREF:

<a href="{% url 'panel:users_index' ip=ip_entry.ip %}"> 
              {{ ip_entry.ip }} 
             </a> 

而且Django的說,

Reverse for 'users_index' with arguments '()' and keyword arguments '{u'ip': u'192.168.1.3'}' not found. 1 pattern(s) tried: [u'panel/users/$'] 

但我有這附近的另一個模板,並有該代碼(和它的作品,呈現到/用戶/頁= 2 &查詢= SomeUser的?):

<a href="{% url 'panel:users_index' page=users.next_page_number query=query %}">...</a> 

我的urls.py:

.... 
url(r'^users/$', view=UsersView.as_view(), name='users_index'), 
url(r'^users/(?P<user_id>\d+)/$', view=UsersView.as_view(), name='users_user'), 
... 
+0

Your url'users_index' does not take any parameters,yo你不能傳遞任意參數給它。你確定你的第二個例子有效嗎? –

+0

@ShangWang,是的,我敢肯定,我測試過了:)它呈現爲「查詢」參數,而不是「路徑」參數:/ users /?query = 123 – arts777

+1

我認爲你對這些參數感到困惑。 '/ users /?query = 123'中的查詢不是您在第二個示例中傳入的'query'。 'query = query'用於在您的url定義中匹配您的變量名稱,就像您的第二個網址''。請看文檔https://docs.djangoproject.com/en/1.8/topics/http/urls/ –

回答

1

您還沒有user_index網址定義的任何PARAM:

url(r'^users/$', view=UsersView.as_view(), name='users_index'), 

它應該是:

url(r'^users/(?P<ip>[\w.]+)$', view=UsersView.as_view(), name='users_index'), 

如果你想使用一個GET查詢參數,你可以嘗試:

<a href="{% url 'panel:users_index' %}?ip={{ip_entry.ip}}"></a> 
+0

謝謝,但我需要簡單的查詢參數(/users/?ip=127.0.0.1),而不是/ users/127.0.0.1/ – arts777

+0

@RankoR我編輯了我的答案 – Gocht

相關問題