如何将数据从 HTML 表单输入类型编号发送到应用 views.py Django 中的变量

How to send data from HTML form input type number to a variable in app views.py Django

这是模板文件中的输入类型编号

<form action="" method="get">
    <input class="form-control m-3 w-50 mx-auto" type="text" name="question" id="question" placeholder="Enter Something...">
    <input type="number" id="typeNumber" class="form-control m-3 w-50 mx-auto" />
    <input class="btn btn-primary btn-lg my-3" type="submit" value="Check Now">
</form>

我想获取用户选择的号码。

我需要将数字变量值存储到 views.py 文件中的 custom_number 变量。我该怎么做?

def your_view(request):
    number = request.GET.get('number_input')
    number = int(number)

custom_number = number

def home_view(request):
    if request.method == "GET" and 'question' in request.GET:
        question = request.GET.get('question')
        data = custom_funct(question)
        context = {'data': data}
    else:
        context = {}
    return render(request, 'home.html', context) 

谢谢

没有名称的输入不会将任何内容发送回服务器,因此这是第 1 步:

<input name="number_input" type="number" id="typeNumber" class="form-control m-3 w-50 mx-auto" />

第二步是使用request.GET.get():

提取它
# views.py

def home_view(request):
    if request.method == "GET" and 'question' in request.GET:
        question = request.GET.get('question')
        number = int(request.GET.get('number_input'))
        data = custom_funct(question)
        context = {'data': data}
    else:
        context = {}
    return render(request, 'home.html', context) 

注意:您的 custom_number = number 不会 工作,因为它在视图之外。我使用 your_view 仅作为示例,因为我不知道您的视图名称是什么。你应该在你的 home_view 中包含我的建议,就像你已经对 question = request.GET('question') 所做的那样。