2016-03-03 5 views
0

У меня есть таблица, содержащая ссылку, и я хотел бы передать некоторые данные моей функции, когда на ссылку будет нажата дополнительная информация.Данные Django, передаваемые с тегом или href

***my.html*** 

<table> 
<tbody> 
{% for query in queries %} 
    <tr> 
    <td name="my_data" value="{{query.name}}"><a href="/internal/my_func">{{query.name}}</a> 
    </tr> 
{% endfor %} 
</tbody> 
</table> 

Вот мой URL

***urls.py*** 

from django.conf.urls import url, patterns 
from app.views import * 

urlpatterns = patterns('', 
    url(r'^internal/my_func$', my_func), 
) 

мои взгляды

***views.py*** 

def my_func(request): 
# how do i get the query.name value here for me to perform more actions on it 
query = request.Get.get('my_data') 

# this does not work 
+0

По какой причине вы не можете использовать параметры запроса в ссылке? Например: ''? – ngoue

+0

Нет причин, я бы попробовал это сейчас – Ezekiel

+0

Кажется, что не работает, есть ли другой способ выбора? – Ezekiel

ответ

1

Я хотел бы попробовать использовать параметры запроса в строке URL-адрес для тега привязки:

<a href="/internal/my_func?query_name={{ query.name|urlencode }}">{{ query.name }}</a> 

Тогда в вашем файле просмотра вы можете получить к нему доступ:

def my_func(request): 
    # Get query_name from request 
    query = request.GET.get('query_name') 

Обратите внимание, что я использовал request.GET вместо request.Get.

+0

Да, это работает. Спасибо – Ezekiel

+0

Рад! Не забудьте также поддержать мой ответ! – ngoue

Смежные вопросы