如何从模板文件夹中的ajax-html调用Django中的views.py文件中的函数?

时间:2015-07-24 07:22:17

标签: javascript jquery python ajax django

我正在使用Django。我想调用来自html文件views.py的应用程序template/app_name/login.html中的函数。 调用此函数进行登录验证。 我的代码片段: index.html:

<script >
  function subLogin()
  {
    var emailid = document.getElementById("emailid").value;
    var password = document.getElementById("password").value;
    if(emailid != "" && password != "")
    {
      if(emailid.length >= 4)
      {
        if(password.length >= 8)
        {
          $.ajax({
            url: '/test/',
            data: {'emailid': emailid, 'password': password},
            type: 'POST',
            dataType: 'json',
            success: function(json) {
              //alert(json['success']);
              if(json['success'] == false)
              {
                if(json['email'] == false)
                  alert('The Email ID Provided is not correct!');
                else
                  alert('The Email ID & Password Provided Do Not Match!');
              }

def test(request):
logger.info("inside check password function....")
if (request.is_ajax()):
    emailid = request.POST['emailid']
    password = request.POST['password']
else:
    emailid = ''
    context = {'emailid':emailid}
return render(request, 'index.html', context)

这是我在myapp / views.py文件中的测试函数。 但无法通过ajax进行此调用。

我想我需要纠正来自ajax代码的调用。

假设我的views.py有&#34; def test(request):&#34;功能。 因此,我想将此函数从html文件调用此test(),并将电子邮件和密码作为后置参数。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

Ajax请求就像任何其他请求一样。也就是说,您需要一个指向返回HttpResponse的视图的URL。