访问 ActionController 参数哈希的值

Accessing value(s) of ActionController Parameters hash

我在从 4.2 升级到 5.1 的应用程序中遇到参数问题。我已经允许我的参数,但正如文档所述,我正在为我的哈希数组取回一个对象,但似乎无法访问它的值。我怎样才能得到这个对象的值?

    {"_method"=>"delete",   "authenticity_token"=>"Z6ZqriiuXu6ODDqhGgocGiaN12rjKD6pUB6n/2v+CABZDAjwLzwczsMM3nM8f0PI0nww43o5mlC35HK+9PVa8w==",
    "domain_name"=>"test.testmodule2.com.",
    "hosted_zone_id"=>"/hostedzone/XXXXXXXXXX",
    "ttl"=>"3600",
    "type"=>"A",
    "value"=>[{"value"=>"1.1.1.1"}],
    "id"=>"/hostedzone/XXXXXXXXXX"}

def record_params
    params.permit!([:hosted_zone_id, :domain_name, :type, :ttl, :alias, :value]).to_h!
end


def destroy
    value = params[:value]
    # returns [<ActionController::Parameters {"value"=>"1.1.1.1"} permitted: true>]
    # would like it to return [{"value"=>"1.1.1.1"}]
end

如果那个散列是params[:value]的值,那么访问里面的value键,比如:

params[:value] = {
  "_method"=>"delete",   
  "authenticity_token"=>"...",
  "domain_name"=>"test.testmodule2.com.",
  "hosted_zone_id"=>"/hostedzone/XXXXXXXXXX",
  "ttl"=>"3600",
  "type"=>"A",
  "value"=>[{"value"=>"1.1.1.1"}],
  "id"=>"/hostedzone/XXXXXXXXXX"
}

params['value']['value'][0]['value']
# => "1.1.1.1"
params['value']['value'][0].keys
# => ["value"]