web-dev-qa-db-fra.com

Convertir une chaîne en tableau dans rails

J'envoie un tableau du client de repos et l'ai reçu comme ceci: "[1,2,3,4,5]"

Maintenant, je veux juste le convertir en tableau sans utiliser la méthode eval de Ruby. Toute méthode par défaut de Ruby que nous pourrions utiliser pour cela?

 "[1,2,3,4,5]" => [1,2,3,4,5]
13
Ghulam Jilani

Peut-être ça?

   s.tr('[]', '').split(',').map(&:to_i)
6
Ho Man
require 'json'

JSON.parse "[1,2,3,4,5]"
  #=> [1, 2, 3, 4, 5] 

JSON.parse "[[1,2],3,4]"
  #=> [[1, 2], 3, 4] 
35
Cary Swoveland

Si vous voulez éviter eval, encore une autre façon:

"[1,2,3,4,5]".scan(/\d+/).map(&:to_i) #assuming you have integer Array as String
#=> [1, 2, 3, 4, 5]
4
shivam