创建模板
这个例子只需要一个简单的模板,它将用来显示前面创建的CommentForm表单,并且它还将有一些辅助的javascript来覆盖表单缺省的提交处理。这个模板扩展自在教程第一部分创建的ajaxapp/base.html模板。
{% extends ‘ajaxapp/base.html’ %}
{% block content %}
<script type="text/javascript">
function send_form(form) {
new Ajax.Request("send/", {asynchronous:true, parameters:Form.serialize(form)});
Form.reset(form);
return false;
}
</script>
<h1> Submit Comments </h1>
<form method="post" action="." onsubmit="return send_form(this);">
<table>
{{ form }}
<tr>
<td></td>
<td>
<input type="submit" value="Send!" />
</td>
</tr>
</table>
{% endblock %}
注意:
如何来覆盖表单的onsubmit缺省方法的。因为在调用中返回了false,所以缺省的提交机处理将永不被触发。
此外,还使用了Prototype的Form库中的一个有用的方法在发送完数据后来重置表单。
还使用了Form库中的一个便利的方法来序列化这个表单。
可以使用文章开头附近第一个例子的语法来创建你自己任意的post strings…如果行的话它会非常容易被序列化。
完成了urls的添加,模板的创建,以及视图的编码。
运行开发服务器:
python manage.py runserver
输入:8000,就可以开始提交表单了。
往表单字段里输入一些数据然后点击提交按钮。你将看到所发出的消息会从开发服务器的终端窗口上被打印出来。