我有一个模板,其代码类似于
<td><a href = "/os/">{{ contact.Tag_ID }}</a></td>
列出表格中Tag_ID
项。现在,当我点击它时,它转到os
页面,这是一个带有Tag_ID字段的表单。我有点想在我点击它时抓住Tag_ID
并将其传递给视图并将其设置为初始值。我知道如何设置初始值但无法确定如何捕获Tag_ID
或其相关数据。
答案 0 :(得分:1)
一个简单的解决方案是传递url中的值:
<td><a href = "/os/{{ contact.Tag_ID }}">{{ contact.Tag_ID }}</a></td>
或
<td><a href = "/os/?TagID={{ contact.Tag_ID }}">{{ contact.Tag_ID }}</a></td>
在第二种情况下,它只是一个旧式查询字符串,您可以使用javascript来阅读。但是,更好的(django)方式是使用第一种方法,并做一个漂亮的网址。
在urls.py
:
(r'^os/(?P<tag_id>[a-zA-Z0-9]*)/*', 'os_view_handler'),
然后在views.py
:
def os_view_handler(request, tag_id=None):
...
答案 1 :(得分:1)
网址代码:
<a class="item" href="{% url "your_views_funct" contact.Tag_ID %}">{{ contact.Tag_ID }}</a>
并将其添加到您的urls.py:
(r'^os/(?P<tag_id>[a-zA-Z0-9]*)/*', 'your_views_funct'),
答案 2 :(得分:0)
在不了解您的应用的情况下,我猜你想要一个像/os/<ID>/
这样的网址
首先,您应该在应用的url.py
中声明此网址。其次,使用模板中的{% url %}
标记。 https://docs.djangoproject.com/en/dev/ref/templates/builtins/第三,您的观点应该能够接受此ID作为参数并采取相应措施。