一尘不染

将对象数组从js传递到rails

ajax

我试图将对象数组从js传递到rails

data.test = [{test: 'asdas'}]

$.ajax({
  url: 'evaluate.json',
  data: data,
  success: function(data){
  },
  dataType : "json"
});

滑轨

def evaluate
   logger.info("#{params.test}")
end

在这里,记录器语句总是让我把

{"0"=>{"test"=>"asdas"}}

我期望下面的登录轨道。

 [{:test=>"asdas"}]

阅读 228

收藏
2020-07-26

共1个答案

一尘不染

您应该JSON.stringify在Javascript中使用Javascript,该Javascript以数组或哈希作为参数(因为它们是唯一有效的JSON构造)。它返回一个形式,该形式是序列化为JSON的Javascript对象。

在Ruby方面,您将收到JSON编码的字符串,因此需要require 'json'(在Rails中自动完成)并使用JSON.parse(string)。这将为您提供一个Ruby对象。

2020-07-26