Как я могу получить доступ к данным после нажатия кнопки, которая была отображена в моем шаблоне, из другого метода в views.py. Краткий пример того, чего я пытаюсь достичь:
ШАБЛОН: (test.html)
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "UTF-8">
<title>Title</title>
</head>
<body>
{% for each in my_list %}
<p>each</p>
{% endfor %}
<a class = "btn" href = "url to cal second_method"></a>
</body>
</html>
Views.py:
def first_method(request, template='test.html'):
context = {
'my_list': ["one","two","tree"]
}
return render(
request,
template,
context
)
def second_method(request):
# i want to work with my_list here after pressing <a>
# i want to be able to export it to excel for example
Как лучше всего это сделать.
Я считаю, что вы можете сохранить свой набор запросов в сеансе, а затем получить его в другом представлении. См. Django: передача набора запросов в другое представление с помощью HttpResponseRedirect для некоторых советов.
Я бы определенно придерживался Django и возможности сеанса, если это возможно. Я не вижу пользы от реализации другого языка, если в этом нет необходимости. Я не могу комментировать большие наборы запросов, потому что у меня нет опыта работы с такими наборами запросов, и я также не знаю, каков предел для определения большого набора запросов. Но я считаю, что эту информацию легко найти.
Я решил это, обналичив набор запросов. См .: Кеш Django
Большое спасибо, как вы думаете, есть ли другой вариант, может быть, с javascript или сеанс - единственный вариант, также знаете ли вы, как он будет работать с очень большим набором запросов?