2014-07-20 128 views
0

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

下面是错误消息不同的浏览器显示

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

的Firebug在Firefox

#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 

Safari浏览器

#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/A,但似乎无法追溯到我的问题的根源。如果有人能指出我的方向,我会很感激。

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

回答

1

Actually dajax and dajaxice are anymore improved so it is unwise to use them:

我应该使用Django的dajax或者Django的dajaxice?

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

这些日子使用这些项目是一个坏主意。 (...)如果你想 使用这个项目,你可能是错的。你应该停止couplig与你的后端的接口或者... ...从长远来看,它会在你的脸上爆炸 。