dajaxice.core.js未使用ajax.py中的函数进行更新

时间:2012-12-19 13:49:24

标签: django dajaxice dajax

我用dajaxice(0.5.4)运行Django(1.4.3)。我的主要项目文件夹ajax.py中有我的函数文件prj,如下所示:

from dajax.core import Dajax
from dajaxice.decorators import dajaxice_register
from django.utils import simplejson
from dajaxice.core import dajaxice_functions
from django.core.urlresolvers import reverse, resolve

def getContent(request, *args, **kwargs):
    url = kwargs['url']
    try:
        v = resolve(url)
    except:
    data = []
    data.append(('some','data'))
    return simplejson.dumps(data)
dajaxice_functions.register(getContent)

我跑了python manage.py collectstatic,我得到以下输出:

Copying '/tmp/tmpm8OlOw'

但是,dajaxice.core.js生成的根本没有我的函数getContent。我哪里错了?我希望dajaxice安装正确,一切都好。

2 个答案:

答案 0 :(得分:0)

似乎您忘记从dajaxice_autodiscover()致电urls.py(这是dajaxice作者推荐的地方)

这个调用将加载ajax.py模块,并使JS代码生成器可以发现它的方法

答案 1 :(得分:0)

您需要使用@dajaxice_register装饰器或文档中提到的其他方法向dajaxice注册函数。

http://django-dajaxice.readthedocs.org/en/latest/quickstart.html#create-your-first-ajax-function