【发布时间】:2021-02-07 15:42:23
【问题描述】:
假设我有一个这样的哈希数组
default_search_order = [
{ field: 'subscribers.nickname', direction: 'ASC' },
{ field: 'subscribers.email', direction: 'ASC' },
{ field: 'roles.name', direction: 'ASC' },
{ field: 'subscribers.first_name', direction: 'ASC' }
]
我有另一个由这样的查询提供的哈希数组:
order = [
{ :field => "subscribers.nickname", :direction => "DESC"},
{ :field => "subscribers.email", :direction => "DESC"},
{ :field => "subscribers.last_name", :direction => "DESC"}
]
我想从 default_search_order 中过滤掉具有匹配字段值的哈希,然后将两个哈希数组组合成一个哈希数组,就像这样。
correct = [
{ field: "subscribers.nickname", direction: "DESC"},
{ field: "subscribers.email", direction: "DESC"},
{ field: "subscribers.last_name", direction: "DESC"},
{ field: "roles.name", direction: "ASC" },
{ field: "subscribers.first_name", direction: "ASC" }
]
我将如何在 Ruby on Rails 中做到这一点?我一直在尝试#.delete_if?和#.keep_if?和 #.select 但我要绕圈子。帮忙?
【问题讨论】:
标签: ruby-on-rails ruby ruby-hash