这是我的views.py文件
from django.shortcuts import render
def home(request):
return render(request, 'home.html',{'name':'irtiza'})
def add(request):
val1 = int(request.GET['num1'])
val2 = int(request.GET['num2'])
res = val1 + val2
return render(request, "result.html",{'result': res})
当我运行此代码时,我收到了这个错误,
错误
然后我尝试了这段代码:
def add(request):
val1 = int(request.GET.get(['num1']))
val2 = int(request.GET.get(['num2']))
res = val1 + val2
return render(request, "result.html",{'result': res})
出现此错误。
在此处输入图像描述
URL。py文件
from django.urls import path
from . import views
urlpatterns = [
path("",views.home,name="home"),
path("add", views.add, name="add")
]
home.html档案
{% extends 'base.html' %}
{% block content %}
<h1> hello {{name}} </h1>
<form action="add">
{% csrf_token %}
Enter 1st number : <input type="text" name="num1"><br>
Enter 2nd number : <input type="text" name="num2"><br>
<input type="submit">
</form>
{% endblock %}
Result.html档案
{% extends 'base.html' %}
{% block content %}
Result : {{result}}
{% endblock %}
当我尝试POST功能时,它给出了下面提到的错误。
from django.shortcuts import render
# Create your views here.
def home(request):
return render(request, 'home.html',{'name':'irtiza'})
def add(request):
val1 = int(request.POST['num1'])
val2 = int(request.POST['num2'])
res = val1 + val2
return render(request, "result.html",{'result': res})
/add“num1”请求方法处的MultiValueDictKeyError:GET请求URL:http://127.0.0.1:7000/add?csrfmiddlewaretoken=t6mVWboKI37vxW3zDbVmpnB3j3g89EzjFhikDDMrB4qVEfrNyqG5pebeXgDLAFE0
我现在应该怎么做才能解决这个错误。这只是一个简单的加法函数。请帮帮我。
基本上我在家里的形式上缺少(方法=“发布或GET”).html
我所做的更改包括:
主页.html
{% extends 'base.html' %}
{% block content %}
<h1> hello {{name}} </h1>
<form action="add" method="POST">
{% csrf_token %}
Enter 1st number : <input type="text" name="num1"><br>
Enter 2nd number : <input type="text" name="num2"><br>
<input type="submit">
</form>
{% endblock %}
views.py
from django.shortcuts import render
def home(request):
return render(request, 'home.html',{'name':'irtiza'})
def add(request):
val1 = int(request.POST['num1'])
val2 = int(request.POST['num2'])
res = val1 + val2
return render(request, "result.html",{'result': res})
然后就可以正常工作了。
删除方括号。这不是必需的。
val1 = int(request.GET.get('num1'))
val2 = int(request.GET.get('num2'))
您在url中传递了两次< code>num1,如下所示...
url - http://127.0.0.1:7000/add?csrf.......&num1=2&num1=3
把它改成吹。。。
url - http://127.0.0.1:7000/add?csrf.......&num1=2&num2=3
从下面得到它…
def add(request):
val1 = int(request.GET.get('num1'))
val2 = int(request.GET.get('num2'))
res = val1 + val2
return render(request, "result.html",{'result': res})
将表格中的这一行改为如下。。。
Enter 2nd number : <input type="text" name="num2"><br>
假设客户端通过表单把新建用户的属性都发送过来了, 那么在UserModule中就建一个add方法如下 @At public Object add(@Param("..")User user) { NutMap re = new NutMap(); String msg = checkUser(user, true); if (msg
全部显示 Add 方法应用于 NewFile 对象的情形。 在“新建项”任务窗格中添加新增项。返回 Boolean 类型。如果项添加成功,则返回 True。 expression.Add(FileName, Section, DisplayName, Action) expression 必需。该表达式返回上面对象之一。 FileNameString 类型,必需。添加到任务窗格中文件列表的文件名称
主要内容:1 HTTP请求方法1 HTTP请求方法 对于HTTP/1.1协议,定义了一组通用的HTTP请求方法。可以根据要求扩展这些方法。这些方法的名称区分大小写,必须使用大写字母。 请求方法 说明 GET 请求指定的页面信息,并返回实体主体。 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可
根据HTTP标准,HTTP请求可以使用多种请求方法。 HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。 HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。 序号 方法 描述 1 GET 请求指定的页面信息,并返回实体主体。 2 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头 3
问题内容: 我在HashSet比较中进行了此测试,但 并未被调用 当farAway = false时我想考虑等于(检查两个点距离的函数) 完整的可编译代码,您可以对其进行测试,并说明为什么在此示例中未调用equals。 编辑 -是否有一种方法可以强制HashSet添加到调用等于? 问题答案: 如果哈希码不同,则无需调用,因为可以保证可以返回。 在此之前,从一般的合同上和: 如果根据该方法两个对象相
基础的 Servlet 接口定义了 service 方法用于处理客户端的请求。当有请求到达时,该方法由 servlet 容器路由到一个 servlet 实例来调用。 Web 应用的并发请求处理通常需要 Web 开发人员去设计适合多线程执行的Servlet,从而保证 service 方法能在一个特定时间点处理多线程并发执行。(译者注: Servlet 默认是线程不安全的,需要开发人员处理多线程问题)