我已经尝试过安装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,那么你是如何通过详细的步骤安装它的,因为看起来官方文档似乎不是非常实用。
答案 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',
)