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

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

@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的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持来客网。