我目前正在查看http://www.dajaxproject.com/pagination/上的Dajax示例,当我执行随机数示例和简单表单示例时,我可以看到:
20/Jul/2012 15:06:37 "POST /dajaxice/Couch.随机化/ HTTP/1.1“200 61
20/Jul/2012 15:06:38 "POST /dajaxice/couch.updatecombo/ HTTP/1.1“200 438
这些信息告诉我相应的ajax任务正在执行。现在我正在尝试执行分页示例,但我不知道如何触发我的ajax,没有onclick或onchange事件,它应该在我提供页面时直接加载。
当我使用一个按钮(onclick事件)来调用我的分页时,它起作用了。
这里我漏掉了什么?谢谢。
发布于 2012-07-23 10:44:21
您是完全按原样使用示例中的代码,还是添加了代码?如果有,发布代码可能会有所帮助。我假设你已经准备好了一个必需的javascript框架(jQuery,mootools等)--一个Dajax需求。
你在你的ajax.py中导入Dajax了吗?示例中没有,但我认为它是必需的:
from dajax.core import Dajax因为示例中使用了Dajax()
还有一些已安装的应用程序对dajaxice和dajax有settings.py要求-在文档https://github.com/jorgebastida/django-dajaxice/wiki/installation中进行了描述
您可能还想为Dajax打开一些日志记录-请参阅Dajax installation获取示例,如果您还没有使用debug=True,请运行一段时间。
更新:
@Nicholas TJ -您关于设置和成功的备注已记录。我确实注意到了另一个问题,在这里,分页示例存在问题,即如何从模板调用Dajax流程。
How do I call Dajax / Dajaxice functions from my Django template
我一直通过JS函数调用Dajax,所以模板调用方法对我来说是一个未知的领域。听起来你的onclick调用也取得了类似的成功。我还没有考虑过模板调用过程被废弃的可能性--这可能是一个过时的例子。
我还注意到示例'pagination_page.html‘的标题写成了'paginator_page’--如果标题被用作模板名称,就会有明显的问题。当我有能力的时候,我会尝试一下这个例子。
好吧-冒着荒谬的风险-新的更新。我得到了一个稍微修改过的例子,在这个普通的例子不起作用之后。
它需要
from dajax.core import Dajax在ajax.py中,这是示例中所没有的。它也无法工作,直到我为基本视图使用了一个RequestContext -a la:
def pagination_example(request):
items = get_pagination_page(1)
return render_to_response('paginator_example.html',{'items':items},context_instance=RequestContext(request))然后它就像预期的那样工作了。
发布于 2012-07-25 15:05:07
需要使用onclick按钮、onchange选项或js调用ajax任务。
对于这个dajax分页示例,它需要首先使用Django中的Paginator将数据填充到HTML模板中,一旦完成,您就可以选择单击“上一步”或“下一步”按钮,这将触发dajax任务。
如果你的数据一开始是空的,你根本看不到“上一步”和“下一步”按钮。
https://stackoverflow.com/questions/11580254
复制相似问题