Привет Мой Django Forms.cleaned_data не дает мне никакого результата. Может ли кто-нибудь помочь мне?
Я пытаюсь создать страницу для генерации паролей, и пользователь будет выбирать либо уровень 0, либо уровень 1 для различной силы пароля. И я не могу добиться выбора пользователем уровня 0 или уровня 1 с помощью радиокнопки.
Мой views.py
from django.shortcuts import render
import random
import string
from types import NoneType
from random_word import RandomWords
from .forms import CHOICES
def password(request):
passw = passGenAdvanced()
form = CHOICES(request.POST)
if form.is_valid():
selected = form.cleaned_data.get("password")
print(selected)
return render(request, 'generator/password.html', {"password":passw})
Мой forms.py
from django import forms
password = [('0','Level 0'), ('1', 'Level 1')]
class CHOICES(forms.Form):
password = forms.ChoiceField(choices=password, widget=forms.RadioSelect)
Мой html-файл
{% extends 'generator/base.html'%}
{% block content %}
<style>
.button {
background-color: #4CAF50;
border: none;
color: white;
padding: 15px 32px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 4px 2px;
cursor: pointer;
}
</style>
<form method = "POST">
{% csrf_token %}
<div class="form-check">
<input class="form-check-input" type="radio" name="password" id="Level0">
<label class="form-check-label" for="password">Level 0</label>
</div>
<div class="form-check">
<input class="form-check-input" type="radio" name="password" id="Level1">
<label class="form-check-label" for="password">Level 1</label>
</div>
<button type="submit" class="button">Submit</button>
</form>
<h5 class="alert alert-success">Your Generated Password: <strong>{{password}}</strong></h5>
{% endblock %}
Простите, если проблема может показаться очевидной, я новичок в django.
В радиовходах отсутствует значение, поэтому добавьте значение для каждого радио и попробуйте снова.