去年因缘际会,和Django接触了有半年时间。Django有开发快速、语言简洁的特点,对于web前端开发人员来说,其官方的模板系统也是尽量做到逻辑与显示分离的典型例子。
在开发的期间,也积累了一些这方面的经验。一个印象比较深的例子就是如何支持后台返回包含中文的JSON/数组格式。和想象中不一样,在后台用Python定义的JSON或数组,直接当作response传回前台后,JavaScript是无法识别的(以dojo方式试过)。这儿就列举两种支持方式,希望能够对其他Django使用者有所帮助。
前台:用DOJO发送AJAX请求,设定返回值为json格式。
var deferred = dojo.xhrPost({
url: "/test_json/",
handleAs: "json",
load: function(response, ioArgs){
return response;
},
error: function(response, ioArgs){
return response;
}
});
deferred.addCallback(function(response){
if(response){
if(!response.length){//json object