遵循这些说明 http://robertogds.com/post/3324511589/howto-backbone-js-using-rails-3
问题/错误是内容永远不会保存到数据库中。使用Firebug看起来POST json请求不正确:
内容
“空todo ......”
DONE
假
文本
“测试”
基本上,backbone.js事件触发一个json更新,它接受输入数据(“test”)并创建一个新的模型属性“text”,而不是更新“content”数据属性......
有什么想法吗?
答案 0 :(得分:0)
你是否在这样调用Backbone.js模型上的保存:
t = new Todo;
t.set({ 'content' : 'test' });
t.save();
或者你这样做:
t = new Todo;
t.save({ 'content' : 'test' });
当您尝试保存模型时,Web服务器还有任何输出到控制台吗?这可能有助于缩小问题的范围。
答案 1 :(得分:0)
该帖子的作者似乎忘了几步。 todos.js文件需要包含一些更改,以确保:text变量(在backbone.js todo示例中)更改为:content
例如setText函数
var text = this.model.get('content');
关闭功能
// Close the `"editing"` mode, saving changes to the todo.
close: function() {
this.model.save({content: this.input.val()});
$(this.el).removeClass("editing");
},
和createOnEnter函数
// create new **Todo** model persisting it to *localStorage*.
createOnEnter: function(e) {
var text = this.input.val();
if (!text || e.keyCode != 13) return;
Todos.create({content: text});
this.input.val('');
},