Django csrf 两种方法设置form的实例

时间:2021-10-28 20:47:56

第一种方法,在视图函数上边添加一条语句

?
1
@csrf_exempt

例子:

?
1
2
3
@csrf_exempt
def login(request):
 return render_to_response('app/login.html', locals())

上边的方法是取消csrf的防御机制。

第二种方法,给出例子,主要为在html的form里面加入{% csrf_token %}这句话,视图函数内加入render(request, 'app/breakdown_view.html', locals())

例子:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<div class="container">
     <form class="form-signin" method="POST">
       {% csrf_token %}
       <h2 class="form-signin-heading">Please login in</h2>
       <label for="inputEmail" class="sr-only">Email address</label>
       <input name="loginEmail" type="email" id="inputEmail" class="form-control" placeholder="Email address" value = "{{myLogin.loginEmail}}" required autofocus>
       <label for="inputPassword" class="sr-only">Password</label>
       <input name="loginPassword" type="password" id="inputPassword" class="form-control" placeholder="Password" required>
       <!-- <div class="checkbox">
         <label>
           <input type="checkbox" value="remember-me"> Remember me
         </label>
       </div> -->
       <button class="btn btn-lg btn-primary btn-block" type="submit">Login in</button>
     </form>
   </div> <!-- /container -->
?
1
2
def login(request):
    return render(request, 'app/login.html', locals())

以上这篇Django csrf 两种方法设置form的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/u013023781/article/details/61617589