【问题标题】:Rails + POST RequestRails + POST 请求
【发布时间】:2014-04-29 19:15:40
【问题描述】:

我正在使用遏制 gem (https://github.com/taf2/curb) 创建一个带有 name 值的 HTTP POST 请求。我的遏制请求如下所示:

http = Curl.post("http://localhost:3001/campaigns", {:name => "Facebook"})

这被发送到 Rails API,但 API 中的方法需要一个哈希值。然后我想应用强参数(使用下面的代码)。如何修改我的 POST 请求以发送一个名为campaign 且名称为一个属性的哈希?

private
def campaign_params
    params.require(:campaign).permit(:name)
end

谢谢

【问题讨论】:

  • http = Curl.post("http://localhost:3001/campaigns", {campaign: {name: 'Facebook'}}
  • 您的代码中缺少一个括号,但它仍然不起作用。 NoMethodError (undefined method permit' for "{:name=>\"Facebook\"}":String):`
  • 呵呵..试试{"campaign[name]" => "Facebook"}
  • 很酷,它已经排序了 - 如果你想把它作为答案,我会勾选它。

标签: ruby-on-rails


【解决方案1】:
http = Curl.post("http://localhost:3001/campaigns", {"campaign[name]" => "Facebook"})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-22
    • 2015-06-10
    • 1970-01-01
    • 2017-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-11
    相关资源
    最近更新 更多