Python 从jquery调用views.py中的函数

Python 从jquery调用views.py中的函数,python,jquery,django,django-templates,django-views,Python,Jquery,Django,Django Templates,Django Views,我有defmain(request)在视图中。py想要进行无休止的滚动 如何从模板中的jquery调用此func: <script> $(window).scroll(function () { if ($(window).scrollTop() + $(window).height() == $(document).height()) { //call main } }); </script> $(窗口)。

我有
defmain(request)
视图中。py
想要进行无休止的滚动

如何从模板中的jquery调用此func:

    <script>
$(window).scroll(function () {
      if ($(window).scrollTop() + $(window).height() == $(document).height()) {
        //call main
      }
    });
  </script>

$(窗口)。滚动(函数(){
if($(窗口).scrollTop()+$(窗口).height()==$(文档).height()){
//呼叫总管
}
});

在url.py中,您必须添加要调用的url。可能是这样的:

url(r'^call-main/$', views.call_main, name='call-main')
然后是来自您编写的函数的ajax调用:

$.ajax({
    url: "{% url 'call-main' %}",
    type: "POST",
    data: { csrfmiddlewaretoken: '{{ csrf_token }}' },
    success: function () {
        // something here on success
    },
    error: function () {
       // something here on error
    }
});

在URL.py中添加您的URL

urlpatterns = [url(r'^sample/$', main, name='main_view')]
然后在模板中使用URL


您进行了一个AJAX调用,作为URL,您可以使用
{%URL…%]
。已经在URL.py中定义了“main”,或者我已经覆盖了它?urlpatterns=[path(“”,views.main,name='main'),]如果您已经在URL.py中,那么AJAX调用的URL将是{%URL'main'%}谢谢,但有错误(索引):1加载资源失败:服务器响应状态为403(禁止)。您需要在ajax中传递csrf令牌。请尝试添加:数据:{csrfmiddlewaretoken:'{csrf_令牌}}}}}在ajax中的'type'之后。现在-未捕获语法错误:成功中的意外标识符:函数()。:-)
{% url main_view %}