第一种方法,在视图函数上边添加一条语句@csrf_exempt例子:@csrf_exemptdeflogin(request):returnrender
第一种方法,在视图函数上边添加一条语句
@csrf_exempt
例子:
@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())
例子:
<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 -->
def login(request):
return render(request, 'app/login.html', locals())
以上这篇Django csrf 两种方法设置form的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
Django csrf form