【发布时间】:2017-08-22 14:35:51
【问题描述】:
我有一个需要与 Rails API 对话的 React 客户端应用程序。我想使用 rails-ujs 方法 Rails.ajax。例如:
Rails.ajax({
type: "POST",
url: "/things",
data: mydata,
success: function(response) {...},
error: function(response) {...}
})
看起来我无法将 data 设置为这样的 JSON 对象:
mydata = {
thing: {
field1: value1,
field2: value2,
}}
我需要像这样手动将其转换为 application/x-www-form-urlencoded 内容类型:
mydata = 'thing[field1]=value1&thing[field2]=value2'
这对于平面数据是可以的,但对于嵌套数据来说很快就会变得复杂。
jQuery 在发出请求之前会自动进行转换。
所以我想知道Rails UJS 是否有某种自动的方法,但我在文档或代码中找不到任何内容。
【问题讨论】:
-
如果您尝试发送表单元素,那么
Rails.serializeElement可能会有所帮助:rails-ujs/utils/form.coffee -
我在learnetto.com/blog/rails-ajax 和这里看到了你的帖子,我想知道你是否找到了比将它们大量格式化更易读的解决方案?
标签: ruby-on-rails ajax ruby-on-rails-5