在 Django 中使用 Ajax Get/Post 方法

Posted

技术标签:

【中文标题】在 Django 中使用 Ajax Get/Post 方法【英文标题】:Using Ajax Get/Post methods with Django 【发布时间】:2013-01-12 07:42:59 【问题描述】:

我对客户端代码非常陌生,而对于服务器端(尤其是 Django)则完全一无所知。我试图做的是单击一个向服务器发送获取请求的按钮,然后将其发布在页面上(使用jGlideMenu)。

我知道代码应该如下所示:

        $('#clickID').click(function()
            $.ajax(
                url:"someURLGoesHere",
                type: 'GET',
                success: function(data)
                    $('#someEl_2').html(data)
                ,
                dataType: JSON
            );
        );

我不知道该 URL 使用什么。我需要参考 url.py 文件吗?意见.py?模型.py?也许其中一个文件中有一个特定的变量?我还需要使用相对目录吗?

我发现的所有教程都使用 php,所以我不确定它是否相同。请帮忙!

【问题讨论】:

【参考方案1】:

您输入您设置的任何 URL,以转到相应的函数来处理 views.py 文件中的数据。如果你的 urls.py 中有这个:

url(r'^/testing$','proj.app.testing') 你会为你的 ajax 请求输入'/testing'

【讨论】:

Austin,即使 views.py 位于不同的目录中?例如,.py 文件在 main/views.py 中,而 .js 在 main/js/index.js 中? JS 文件的位置无关紧要。重要的是您调用了正确的 URL。 JS 路径不相关。【参考方案2】:

如果你想从你的 Django 应用中插入内容,你可以使用 jQuery 的load() 方法:

$('#result').load('path/to/script.py');

您需要点击一个可公开访问的 Python 脚本。而对于其他 MVC 框架,您需要点击控制器,因为Django has a slightly different methodology,您需要点击视图,因为这些控制对您的模型的访问并处理大部分业务逻辑:

在 Django 对 MVC 的解释中,“视图”描述了 呈现给用户;不一定只是数据如何 看起来,但显示的是哪些数据。相比之下,Ruby on Rails 和 类似的框架表明控制器的工作包括决定 哪些数据被呈现给用户,而视图是严格的 数据的外观,而不是呈现的数据。

【讨论】:

以上是关于在 Django 中使用 Ajax Get/Post 方法的主要内容,如果未能解决你的问题,请参考以下文章

如何在 django 中使用 ajax 更新绘图图

Python-Django 如何在管理员中使用 django-ajax-uploader?

如何在ajax中使用django url?

如何在 Django 中使用 Ajax 上传图片? Python

如何在 Django 模板中使用 Ajax?

如何在 Django 中使用 Ajax