No seu exemplo, digamos que você queira verificar os grupos de moderadores e administradores, você deve ter:
chave: group_name
valor: moderators,admins
Coisas técnicas para ajudar, não se preocupe comigo.
Tentei entender olhando o código e acho que há um problema aqui:
Os parâmetros são transformados antes que run_query seja chamado.
Digamos que você tenha este valor original: [{\"key\":\"group_names\",\"value\":\"admins,moderators\"}]
O valor transformado será: {{\"key\"=>\"group_names\", \"value\"=>\"admins,moderators\"}=>nil}
No entanto, cast_params parece esperar {\"group_names\"=>\"admins,moderators\"}
Tentei testar esta mudança ingênua e os parâmetros funcionaram.
def self.params_to_hash(query_params)
params = JSON.parse(query_params)
params_hash = {}
params.each do |param|
key = param["key"]
value = param["value"]
params_hash[key] = value
end
params_hash
end