我有两个观点: myview和view-2。
视图-两个加载两个值(manie和pablo)并将其发送到模板:
def view-two(request):
manie = ObjectUno.objects.all().count()
pablo = ObjectDos.objects.all().count()
...
return render(request,"website/maniePablo.html",locals())在maniePablo.html中,我实现了将这两个值发送到名为"myview“的其他视图的过程:
<form hidden method="POST" action="{% url 'myview' %}" id="myform">
{% csrf_token %}
<input value="{{pablo}}" name="pablo">
<input value="{{manie}}" name="manie">
</form>
<a onclick="$('#myform').submit();" id="BTNmesp" class="btn btn-success" role="button"> XXX </a>单击btn XXX,我的视图"myview“获得以下两个值:
def myview(request) :
...
if "pablo" in request.POST :
nbpablo = request.POST["pablo"]
nbmanie = request.POST["manie"]
...使用此过程:-我可以将值发送到我的视图,而不是在url中显示这些值(例如:localhost:8000/nameofurl/manie/pablo.)。- myview不加载这些值,比如view-2(省电)
,但我想知道这个过程是否良好,以及他是否会造成安全问题?
如果不是一个好的解决方案,我会使用ajax..。
发布于 2015-09-02 11:53:01
这根本不安全。任何人都可以通过查看页面源来查看这些值,并在提交之前通过浏览器中的开发工具对它们进行更改。
我会问你为什么要提供它们。首先,它们来自服务器,而您将其直接发回,这有什么意义呢?您可以更容易地在处理post的代码中直接在服务器上获得它们。
发布于 2020-07-11 16:31:52
一个简短的答案:如果不希望在url和后端显示信息,请使用django会话,检查request.session中的值是否相同
https://stackoverflow.com/questions/32351913
复制相似问题