将 JSON 从 Backbone.js 传递到 Rails 2
当 Backbone.js 将数据传递到服务器时,它不会嵌套 CGI 参数 像 Rails 期望的那样,在模型名称哈希中,所以你必须从所有模型名称中选出它们 通过 Hash.select 或反向合并或控制器操作中的其他一些 hack 来设置其他参数,或者使用 Backbone 中的 emulateJSON hack 将所有值 JSON 编码为 单个“模型”参数并在控制器中对其进行解码。双方是否有更优雅的解决方案?
When Backbone.js passes data to the server, it doesn't nest the CGI params
in a model-name hash like Rails expects, so you have to pick them out of all
the other params via Hash.select or a reverse merge or some other hack in the controller action, or use
the emulateJSON hack in Backbone which JSON-encodes all the values in to a
single "model" parameter and decode them in the controller. Is there a more elegant solution on either side?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以在每个骨干模型中重写 toJSON() ,以便它为自己提供一个根元素。例如:
在模型基类中推广这一点也很容易,也许可以检查模型的“jsonRoot”属性或类似属性是否存在。
You can override toJSON() in each Backbone Model so that it gives itself a root element. For example:
It is also easy to generalize this in a model base class, perhaps checking for the existence of a Model's 'jsonRoot' property or similar.