使用ajax

时间:2016-08-08 10:16:20

标签: html ajax django database templates

我对django和ajax很新,我试图做以下事情:

  • 在我的HTML中,我有几个"选择"元素,并为每个"选择"有一个名为" view"。

  • 的按钮
  • 当我点击"查看"我想检索数据库信息,取决于在"中选择的选项"对应于点击的"视图"。这应该由ajax完成,我想在html中显示一些所说的数据库信息(显然没有刷新页面)。

我知道我应该在按钮上添加一个onClick事件,并在那里通过ajax发送选定的选项信息,我对此感到困惑的是:

  • 在这种情况下,我应该使用GET还是POST?为什么?

  • 我与AJAX联系的URL是什么?我是否应该创建一个仅用于此功能的特殊URL(并且可能用户不会以正常方式访问)?

  • 一旦我已经进行了AJAX调用,我究竟应该如何将数据库信息返回给模板?我会假设这是在视图中以某种方式完成的,对应于我将调用的URL?我是否以某种方式使用"成功"函数在调用AJAX的javascript中?

我发现这里最相关的问题是这个问题Django: Get database object value in template using Ajax,但它并没有清除我所有的疑虑。

1 个答案:

答案 0 :(得分:0)

对于这个特殊用例,你应该使用GET。如果您正在使用jQuery,这使得这些事情变得非常简单,您可以使用$.GET()

创建一个返回JsonResponse的视图,并与Ajax联系。

是。您将在jQuery GET中使用success函数,响应将包含Django的JSON序列化输出。

您可以自己构建JSON对象,也可以使用Django serializer