Django与Ajax教程(三)

标签: web  python  django  ajax  休闲
 
第三部分:DjangoPrototype:Ajax Request(非对称模式发送数据)
 
      Ajax另一个常用的功能是发送数据到服务器但不强制用户重新加载他们所在的整个页面。在DjangoAjax教程的第三节中我们将要向Server发送Django生成表单的内容。(RequestUpater不同之处是Requset对象不需要服务器进行应答,下面将更加深入的进行解释。)你可以从这里得到本节例子的源码。
 
        Ajax Request语法和目的
    Ajax.Requst负责的是从网页到服务器的单向交流。它大概就像网页说“嗨,这家伙创建了一个帐号,我已经知道该怎么做了,所以不要理会给我的指令”,或者可能像网页说:“server my man, you have a new comment to hold onto until someone can approve it.(你有一条新的评论需要保持直到有人批准它--这句话不太明白是嘛意思)”当你希望使用Ajax.Request从服务器得到一些HTML来填充div,或者从服务器得到任何种类的响应时,它是没有用的,你将什么也得不到。
    Ajax.Request 的语法为:
new Ajax.Request(‘url/to/send/to’, config)
 
URL Ajax Updater
var post = ‘id=’ + id; 
new Ajax.Request(‘category/remove/’, {asynchronous: true, method:‘post’, postBody:post}); 
new Ajax.Request(‘category/add’, {asynchronous: true, parameters:Form.serialize(form)});
Prototype Form     在Django应用中使用Ajax.Request
    在文章开始我们就谈到,我们要创建一个有简单表单的页面,当我们按下提交按钮的时候表单就会被发送到服务器。在发送后我们将会使用 库来重置这个表单。
JavaScript 
    修改urls.py
ajaxapp/urls.pyajaxapp/urls.py修Views    我们需要在视图中添加两个函数---。我们也会将表单和视图写在一起(在一个大的工程中最好将模型从视图中独立出来)。
    模型会有两个字段,一个。我们将通过函数去渲染”变量传给了它。
    我们还需要创建 实例,或者可能通过新值来更新现有实例。幸好很容易从表单中获取键值。
    请注意,因为我们接收到的是一个通过 数据来转换成为一个已创建的表单的实例。就像下面这样简单:
def send(request): 
    post = request.POST 
    form = CommentForm(post)
form_for_model form.save() Model views.py    我们这个例子只需要一个简单的模板,它将用来显示前面创建的来覆盖表单缺省的提交处理。这个模板扩展自我们在教程第一部分创建的缺省方法的。因为我们在调用中返回了库中的一个便利的方法来序列化这个表单。可以使用文章开头附近第一个例子的语法来创建你自己任意的,模板的创建,以及视图的编码:一切搞定!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值