2016-03-03 17 views
0

所以,如果我想要一個用戶名鏈接到它的個人資料,我希望鏈接到包含GET形式向用戶的姓氏和名字......難道我只是硬編碼到的鏈接,或者是有一個更優雅的編碼方式呢?這裏是硬編碼:Django:如何使用超鏈接進行GET請求?

<p> 
<li role="presentation" class="active"><a href="{% url 'profile' %}?fname={{ fname }}&lname={{ lname }}">{{ user.fname }}</a> 
</li> 
</p> 
+5

就是這樣,老兄。 – Gocht

回答

0

是的,更優雅的方式是設置一個需要,例如路由,用戶的ID(PK),並使用一個DetailView設置爲用戶模式或一個接受ID並檢索相關用戶的函數視圖。在第一個和最後一個名字傳遞直接意味着你需要他們兩人的查詢,而不是因爲它傳遞給你(框架禮貌checks its type後,只需查詢該ID(拉出來的查詢字符串之後),前提是你已經設置正確的路線)。

所以,你的路線將看起來像url(r'^profile/(?P<pk>\d+)/$', ProfileView.as_view(), name='profile')和你的模板標籤將看起來像{% url 'profile' user.id %}