在尝试将Dajax实现到我的Django项目后,我遇到了一个问题。
在Dajax网站的安装和使用说明中的某个时刻,我被指示在ajax.py中调用一个方法:
<button type="button" onclick="Dajaxice.MyProject.MyApp.say_hello(Dajax_process)">Dajax</button>
但是当我尝试点击所述按钮时,根本没有响应。它就像一个空按钮。
我还在试图弄清楚Dajax会如何识别我的say_hello函数......但这可能是Dajax的使用方式。
我的say_hello方法实现如下:
from dajaxice.decorators import dajaxice_register
from dajax.core import Dajax
@dajaxice_register
def say_hello(req):
print "DAJAX"
dajax = Dajax()
dajax.alert("Hello World!")
return dajax.json()
乍一看,我认为没有找到方法就是问题。如果这是原因,我仍然不能100%确定。但它可能是。
有没有人对我应该寻找什么有任何建议?
我在页面上有所有说明:http://django-dajax.readthedocs.org/en/latest/installation.html#installing-dajax
谢谢, 大卫
答案 0 :(得分:1)
目前我自己跳过了这个障碍。
要确定一些事情:
您需要使用以下命令在HTML Head视图中加载:
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery-2.0.3.js"></script>
您还需要确保使用以下命令调用dajax jquery核心:
<script type="text/javascript" src="{{ STATIC_URL }}dajax/jquery.dajax.core.js"></script>
接下来,在运行服务器以测试运行之前
manage.py collectstatic
这将复制django需要的所有Dajax / Dajaxice。我将这两个安装到我的普通Python2.7库中,django从那里拉出它们并将它们复制到所需的文件夹。
这应该让你去...我在这里不是专家,但这些步骤有助于解决我的问题。
另外,如果您从Dajax网站复制代码,请不要忘记在onclick调用中更改应用程序根目录....
<input type="button" value="callback!" onclick="Dajaxice.*EXAMPLE-APP-NAME*.saybye(my_js_callback);">
您需要将其从上面更改为“民意调查”或“示例”...无论运行该代码的应用程序的名称是什么。