Привет Мой 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.

В радиовходах отсутствует значение, поэтому добавьте значение для каждого радио и попробуйте снова.

Вернуться на верх