我使用YiiBackboneBoilerplate。我想用數據填充模型是這樣的:骨幹取()發送text/html的請求類型,而不是JSON
--model--
define([
'jquery',
'underscore',
'backbone'
], function($, _, Backbone) {
var EvaluateModel = Backbone.Model.extend({
urlRoot: 'evaluate/process',
defaults: {
title: '',
state: 1
}
});
return EvaluateModel;
});
--in我view--
initialize:function() {
var result = new Evaluate({id:this.id});
result.fetch({
success: function(result, response) {
JSON.stringify(result.model);
}
});
},
- Yii的行動 -
public function actionProcess() {
//I have tryed this
echo json_encode('test');
Yii::app()->end();
//and this
$this->sendResponse(200, CJSON::encode(array('title' => 'test')));
}
我得到的textStatus:parsererror和從服務器返回的結果包含當前頁面的html
此外,fetch()應該根據app.js中的初始設置發送POST請求類型,但類型是 GET
--app.js--
// initialize Http object to make backbone work with POST instead of GET
Http.initialize({type:'POST'});
出了什麼問題?
>我沒有看到任何文件指的Http.initialize是http.js這是在應用程序文件夾\程序\ JS \庫\ utils的\ http.js爲YiiBackboneBoilerplate http://www.yiiframework.com/wiki/390/yiibackboneboilerplate-project-setup-for-your-yii-backbonejs-applications/ – user2814599
>,只會返回JSON是你打電話mypage.json網址(即它只考慮擴展名)。請詳細解釋一下 – user2814599
我澄清了JSON調用問題。但是我仍然無法找到解釋'Http.initialize'應該做什麼的文檔:在你鏈接的頁面的任何地方都沒有提到它。 –