0

所以我有一个 Django 项目,我在其中使用 Dajax 和 Dajaxice。该项目运行良好(使用 python manage.py runserver 在本地提供服务)但是当我第二天再次启动它时(没有对任何文件进行任何更改)。Dajaxice 刚刚停止生成/解析/服务(我不确定出了什么问题)。这导致我在 ajax.py 中的任何 Dajax 方法都没有被调用。同样,没有更改之前运行的项目实例的设置、配置或代码。

以下是各种浏览器显示的错误消息

铬合金

Resource interpreted as Script but transferred with MIME type application/octet-stream: "http://localhost:8000/modmap/static/dajaxice/dajaxice.core.js".

火狐上的萤火虫

#onloading the html with dajaxice script
SyntaxError: syntax error
{% load url from future %}

#on trying to trigger a dajax function
ReferenceError: Dajaxice is not defined

苹果浏览器

#on loading page
SyntaxError: Unexpected token '%'

#on triggering method
ReferenceError: Can't find variable: Dajaxice

有趣的是,当我通过 Chrome 访问该站点时,无论在“灾难”之前是否正常工作,但如果我在 ajax.py 中编写一个新方法并调用它,它就不会。我认为新方法没有被注册,因为 dajaxice.core.js 脚本每次都没有生成。但是在 Firefox 和 Safari 上,这些方法都不起作用。我还认为我的静态文件提供得很好,因为 dajax 脚本已按应有的方式加载。

我已经阅读了 Q/AI 可以找到的所有文档,但似乎无法追踪我的问题的根源。如果有人能指出我正确的方向,我将不胜感激。

编辑:collectstatic 也注册了新功能。一切都在 Chrome 上运行。在 Safari 和 Firefox 上没有任何效果。我开始认为这是一个浏览器兼容性问题,但是当我认为没有任何版本的任何更改时,我怀疑自己,过去的东西也可以在 Safari 和 Firefox 上无缝运行。

4

1 回答 1

1

实际上 dajax 和 dajaxice 已经得到改进,所以使用它们是不明智的:

我应该使用 django-dajax 还是 django-dajaxice?

总之,不。我在 4 年前创建了这些项目,作为一个很酷的工具,以解决我当时遇到的一个特定问题。

这些天使用这些项目是一个坏主意。(...) 如果你想使用这个项目,你可能错了。您应该停止将您的界面与后端耦合,否则......从长远来看,它会在您的脸上爆炸。

于 2015-05-11T13:26:23.683 回答