Я иду по правильному пути, пытаясь использовать HttpResponseRedirect, или есть лучшее решение?
Я хотел бы получить значение и даже строку, если возможно, выбранного значения в моем HTML файле.
index.html
<form action="#" method="post">
<select id="drop1">
<option disabled selected value> -- select value -- </option>
{% for i in df %}
<option value="{{ i }}">{{ i }}</option>
{% endfor %}
</select>
</form>
views.py
def index(request):
if request.method == 'POST':
selected_value = request.POST.get('drop1')
print(selected_value)
else:
return render(request, 'index.html', {'df': df.designation_list})
При этом ничего не возвращается. Я видел, что нужно использовать <form></form>
для получения html-значения, но не могу найти, что поместить в поле action=
.
Можете ли вы увидеть, чего не хватает в моем коде?
Заранее спасибо
Атрибут action указывает, куда отправлять данные формы, когда форма отправлена.
В вашем случае, вы должны добавить url представления, которое будет передавать эти данные. Например:
<form action="{% url 'index' %}" method="post">
<select id="drop1">
<option disabled selected value> -- select value -- </option>
{% for i in df %}
<option value="{{ i }}">{{ i }}</option>
{% endfor %}
</select>
</form>
Примечание: Замените index
именем, которое вы указали в шаблоне URL.