/ / Pobierz pole tekstowe z formularza - django, django-forms

Pobierz pole tekstowe z formularza - django, django-forms

Uczę się Django 1.6 i utknąłem w części formularzy ...

Mam zasadniczo jeden widok i jeden szablon, który jest formularzem z jednym polem tekstowym i po wysłaniu tego formularza zwróci ten sam widok, ale z listą wyników poniżej

Już to zrobiłem, ale nie mogłem użyć formularza ...

Co próbuję zrobić, to uzyskać wartość z pola formularza w widoku i filtr rekordów widoku na podstawie tej wartości.

Mam ten formularz w szablonie

<form id="1"  method="post" action="/search/">
<label class="description" for="element_3">Brand</label>
<input id="element_3" name="brand" class="element text medium" type="text" maxlength="255" value=""/>

który wywołuje ten widok

def index(request):
latest_products = products.objects.filter(brand="adidas", )
template = loader.get_template("search/index.html")
context = {"latest_products": latest_products}
return render(request, "search/index.html", context)

Co powinienem zrobić, aby odzyskać wartość pola "marka" z mojego formularza, aby użyć go jako filtra wyszukiwania?

Odpowiedzi:

0 dla odpowiedzi № 1

Obiekt żądania ma pole o nazwie method. Możesz przetestować żądanie w ten sposób:

if request.method == "POST":
[process data]

request.POST to słownik, który powinien mieć wejściowe nazwy formularzy z powiązanymi wartościami.

Możesz również spojrzeć na Django Forms

https://docs.djangoproject.com/en/1.6/topics/forms/

Powodzenia!