Ruby on Rails将嵌套的哈希嵌套到强params

时间:2016-06-28 16:39:22

标签: ruby-on-rails ruby ruby-on-rails-4

我正在使用强大的params从我的ruby应用程序发布一个哈希到一个用ruby构建的api。

我的帖子如下:

[3] pry(#<Api::V1::OrdersController>)> order_params
NoMethodError: undefined method `permit' for #<String:0x007feb6890acf8>

问题是,这不适用于强大的参数

params[:order][:pickup_attribute]

如何正确发布?另外,我也想发布一个嵌套的已经下订单。

{
  "errorMessage": "Cannot find module 'index'",
  "errorType": "Error",
  "stackTrace": [
    "Function.Module._load (module.js:276:25)",
    "Module.require (module.js:353:17)",
    "require (internal/module.js:12:17)"
  ]
}

我怎样才能通过它发送?

1 个答案:

答案 0 :(得分:0)

您将order发布为字符串。试试这个:

resp = Net::HTTP.post_form(url, 'order' => @order.as_json, 'max' => '50')

注意as_json(返回哈希)而不是to_json(返回一个字符串)。如果它不起作用,我希望看到你的控制器的实现。