Django将值从下拉菜单传递到视图 [英] Django Pass value from dropdown menu to view

查看:22
本文介绍了Django将值从下拉菜单传递到视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我写了一个密码Generato,我希望用户可以自定义长度。如何将模板下拉菜单中的值传递给我的视图,以便创建长度正确的密码。

现在是我的views.py:

def view_passwordgenerator(request):
    characters = list(string.ascii_letters + string.digits + "!@#$%^&*()")
    random.shuffle(characters)
    length = 10
    password = []
    for i in range(length):
        password.append(random.choice(characters))
    random.shuffle(password)
    pw = ("".join(password))
    context = {'password': pw, 'length': length}
    return render(request, 'home/passwordgenerator.html', context)

推荐答案

  • views.py中添加此

    length = int(request.GET.get('length')) # UPDATED to cast int

  • html file中添加以下内容:

    <form action="{% url 'view_passwordgenerator' %}">
    <select name="length"> 
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12" selected="selected">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
    </select> Length
    <input type="submit" value="Generate Password" class="btn btn-primary">
    </form>```
    
    
    
  • 从上下文中删除length

有关完整的详细示例,请访问我的Django Password Generator Github Repo

这篇关于Django将值从下拉菜单传递到视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆