2012-12-28 56 views
1

注册视图是由主干渲染的。当我提交表单来注册一个新用户时,我得到了这样的错误。Devise + Backbone.js,无法创建新用户

enter image description here

我知道这是要去检查电子邮件是否存在。但我不知道为什么我发布了所有的属性,但后端似乎没有得到它。

回答

2

我猜你的控制器正在查看params[:user]来查找用户的信息,但是您的params中没有:user。这个The manual会谈:

使用Rails工作
[...]
同样,骨干puts和职位的模型直接JSON表示,在默认情况下,Rails的命名空间预计属性。您可以让您的控制器直接从params过滤属性,或者您可以在Backbone中重写为JSON以添加额外的包装Rails所需的属性。

所以调整自己的控制器来看待params而不是在里面的东西params或调整骨干模型toJSON看起来是这样的:如果你改变toJSON你要调整如何

toJSON: function() { 
    return { user: _.clone(this.attributes) }; 
} 

您将数据提供给您的模板以补偿toJSON返回值更改。

+0

非常感谢!我认为这是问题。我认为的一个技巧是在骨干模型中添加'paramRoot:'user'',但似乎失败了。 – yujingz

相关问题