[英]How to remove a key/value pair from a nested hash in params?
我想从参数中的嵌套哈希中删除键/值。
我的参数是:
Parameters: {"utf8"=>"✓", "q"=>{"upward_trending"=>"", "downward_trending"=>"", "name_cont"=>"test", "category_id_in"=>["1", ""], "country_eq"=>"", "end_date_gteq"=>"", "end_date_lteq"=>""}, "commit"=>"Filter", "type"=>"Dailyd
eal"}
我想从q
哈希中删除name_cont
。
我可以通过执行以下操作删除完整的哈希:
request.query_parameters.except(:q)
要么
params.except(:q)
但是每次我尝试类似的东西:
except(:q[:name_cont])
except("name_cont")
except([:q][:name_cont])
我得到错误。
有任何想法吗?
你应该试试
request.query_parameters[:q].except(:name_cont)
# or
params[:q].except(:name_cont)
可以使用except!
如果您想就地修改,也可以。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.