【问题标题】:How to accept hash parameters如何接受散列参数
【发布时间】:2014-07-11 00:24:21
【问题描述】:

这里是传递的参数:

{"utf8"=>"✓",
 "authenticity_token"=>"j3R0aro/Arg4Y3Zu6zIIxZYbYTxqoqyKEGc11CkvYDU=",
 "inventory"=>{
   "9"=>"0",
   "12"=>"0",
   "1"=>"0",
   "2"=>"0",
   "3"=>"0",
   "10"=>"0",
   "11"=>"0",
   ...
 }
}

我似乎无法获取inventory 中的参数,无论出于何种原因,下面的代码一直希望将库存作为一个长长的哈希数组而不是哈希本身来获取。我做错了什么?

def inventory_params
  params.permit(inventory: [{:itemlist_id => :quantity}] )
  @inventory_params = params.reject { |k, v| (v == "") || ( v == "0" ) }
end

我也试过params.permit(inventory: {:itemlist_id => :quantity} ),但也没有用

【问题讨论】:

  • 顺便说一下,这不是一个哈希数组。

标签: ruby-on-rails ruby-on-rails-4 parameters parameter-passing


【解决方案1】:
params.require(:model_name).permit(:inventory) 

我猜会起作用的。

【讨论】:

    【解决方案2】:

    结果如何:

    params["inventory"]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-12
      • 2012-07-22
      • 2021-10-29
      相关资源
      最近更新 更多