Сохранение выбора выпадающего меню в виде файла cookie в Django

#python #html #django

#питон #HTML #джанго

Вопрос:

Я хотел бы сохранить выбор пользователя из выпадающего меню в виде файла cookie. Я видел, как этот вопрос задавали раньше, но никогда полностью на python. Я хочу использовать эти два файла cookie для выполнения простого фрагмента кода, чтобы не было необходимости в использовании базы данных.

Вот мой текущий HTML — код:

 lt;form role="form" method="post"gt;  {% csrf_token %}  lt;div class="form-group"gt;  lt;label for="dog-names"gt;Choose a dog name:lt;/labelgt;  lt;select name="dog-names" id="dog-names" onchange="getSelectValue"gt;  lt;option value="rigatoni"gt;Rigatonilt;/optiongt;  lt;option value="dave"gt;Davelt;/optiongt;  lt;option value="pumpernickel"gt;Pumpernickellt;/optiongt;  lt;option value="reeses"gt;Reeseslt;/optiongt;  lt;option value="{{ current_name }}"gt; {{ current_name }}lt;/optiongt;  lt;/selectgt;  lt;br/gt;  lt;labelgt;Current dog: {{ current_name }}lt;/labelgt;  lt;/divgt;  lt;button type="submit" value="Submit" class="btn btn-info"gt;Submitlt;/buttongt; lt;/formgt;  

Питон

 def cookies_test(request):  template_name = 'cookies.html'  current_name = "Rigatoni" # default name  if request.method == 'GET':  if 'name' in request.COOKIES:  current_name = request.COOKIES['name']  elif request.method == 'POST':  current_name = request.POST.get('name')  response = render(request, 'test.html', {  "current_name": current_name  })  response.set_cookie('name', current_name)  return response  

Python работает, если я даю значение {{ имя_потока }} Все, что я хочу, это иметь возможность сохранять значение из выпадающего меню в переменной, чтобы я мог сохранить его в виде файла cookie

Буду признателен за любые советы 🙂

Комментарии:

1. Вместо файла cookie вы можете просто сохранить значение в сеансе, например request.session["selection"] = selection_value , а затем, когда вызывается представление, всегда проверять request.session["selection"] , присутствует ли оно, и использовать это значение. Этот механизм использует стандартный набор файлов cookie сеанса, установленный Django, и вам не нужно устанавливать свои собственные файлы cookie.