Dajaxice安装演练

时间:2013-01-29 23:40:25

标签: javascript django dajax

我已经尝试过安装Dajaxice的各种方法来测试它,但无论如何,我似乎可以适当地提供所有JS文件,但似乎无法实际调用ajax.py中的函数。具体来说,在我的模板中,我有一个带

的按钮
onclick="Dajaxice.dajaxtest.exampleapp.sayhello(my_js_callback);"

但我总是得到(在Chrome中的开发者控制台中)

Uncaught TypeError: Cannot read property 'exampleapp' of undefined

在这个特殊情况下,它是'exampleapp',但是根据其他建议,我尝试了很多不同的引用。我的索引页面上的Dajaxice对象似乎没有任何预期的属性,它没有'myprojectname'(dajaxtest),也没有'myappname'(exampleapp),也没有'myfunction'。

另外,安装Dajaxice的文档没有提及

from dajax.core import Dajax

在ajax.py中,但另一个答案确实如此,所以我试了一下无济于事。

如果您感兴趣,我正在尝试制作工作的确切代码库已压缩并可在此处获取:https://docs.google.com/file/d/0B16ANo4rID0PZld5V0p0enlRdUU/edit(Dajax / Dajax ice通过pip install django-dajax安装但实际上是一个完美的答案我的问题是,如果你已经启动并运行了Dajaxice,那么你是如何通过详细的步骤安装它的,因为看起来官方文档似乎不是非常实用。

2 个答案:

答案 0 :(得分:1)

我完全按照documentation says做了什么,并且它工作得很好(尽管我真的只能解决示例问题)。

我注意到的一些事情:

1)您不应该导入Dajax以使Dajaxice正常工作(因为前者位于后者之上)。

2)我认为你的按钮onclick应为onclick="Dajaxice.exampleapp.sayhello(my_js_callback);"

3)您需要将urlpatterns += staticfiles_urlpatterns()添加到urls.py

的底部

我希望这有帮助!

答案 1 :(得分:0)

我想您还没有在INSTALLED_APPS内的项目settings.py中添加appname。 像这样:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'dajaxice',
    'simple',
)