我有一个在cakephp中开发的网站,我在骨干网中使用了一个简单的应用程序。 现在我想从主干保存数据但不起作用,总是在回调错误内返回,并且它没有采用正确的值来保存在表内。
这是我的简单应用:
TaskModel = Backbone.Model.extend({
url: function(){
return "/step_task/ajax_save";
}
});
TaskCollection = Backbone.Collection.extend({
model: TaskModel,
initData: function(data){
return data;
}
});
var TaskView = Backbone.View.extend({
template: _.template($("#task-template").html()),
initialize: function(){
this.task = new TaskCollection(<?php echo json_encode($step['StepTask']); ?>);
this.render();
},
render: function(){
taskModel = new TaskModel({
'id': '1',
'user_id': '1'
});
//--------------------------- here I would like to save inside my table ----------------
taskModel.save(null, {
success: function(model, response) {
console.log('success');
console.log(model);
console.log(response);
},
error: function(model, response) {
console.log('error');
console.log(model);
console.log(response);
},
wait: true // Add this
});
$(this.el).html(this.template({tasks: this.task.models}));
}
});
这是我在StepTaskController.php
中的功能public function ajax_save(){
$this->autoRender = false;
$this->StepTask->save($this->request->data);
}
我该如何解决?
答案 0 :(得分:1)
尝试将模型中的url
更改为urlRoot
:
TaskModel = Backbone.Model.extend({
urlRoot: '/step_task/ajax_save'
});