Сравните ввод формы Django-HTML с элементами в списке
У меня есть список имен пользователей, и я хочу сравнить вводимые данные формы с элементами списка.
Предположим, у меня есть список, скажем,
listA = ["abc", "def", "ghi"]
и HTML-форма,
<form action="#" class="signin-form">
<div class="form-group mb-3">
<label class="label" for="name">Username</label>
<input type="text" class="form-control" placeholder="Username required>
</div>
<div class="form-group">
<button type="submit" class="form-control btn btn-primary submit">Sign In</button>
</div>
Я хочу сравнить входные данные от элементов в списке.
Сделайте специальную страницу для обработки сравнения и добавьте эту страницу в качестве действия в вашей форме.
Затем в представлении для этой страницы возьмите данные, введенные пользователем, используя get
или post
, после чего вы можете сравнить данные любым удобным для вас способом.
Вы должны добавить аргумент name
и желательно метод POST
к вашему вводу, чтобы затем вы могли использовать что-то вроде этого:
HTML:
<form action="/" method="POST" class="signin-form">
<div class="form-group mb-3">
<label class="label" for="name">Username</label>
<input name="username" type="text" class="form-control" placeholder="Username required>
</div>
<div class="form-group">
<button type="submit" class="form-control btn btn-primary submit">Sign In</button>
</div>
</form>
Python:
listA = ["abc", "def", "ghi"]
if 'username' in request.POST:
if request.POST['username'] in listA:
# do something