2011-08-11 143 views
0

我目前正在使用MySQL TEXT列中的字符串表示來存儲數組。這適用於我在檢索數據時構建的應用程序。問題是,我需要在某個點轉換此字符串,並使用String#to_a只是將數組填充爲一個元素數組中的字符串。這裏有一個例子:將紅寶石數組轉換爲字符串,反之亦然

:026 > my_arr = [["foo", 1], ["bar", 2]] 
=> [["foo", 1], ["bar", 2]] 
:027 > my_str = my_arr.inspect 
=> "[[\"foo\", 1], [\"bar\", 2]]" 

迄今爲止好。

轉換回然而,顯而易見的原因是行不通的:

:029 > my_str.to_a 
=> ["[[\"foo\", 1], [\"bar\", 2]]"] 

什麼的要對這個正確的方式?

注意

我不想使用eval。它確實是我在這種情況下需要的,但是我不能相信輸入,因爲這個數組是由用戶提供的。

回答

1

將其序列化爲JSON或YAML或其他東西。

相關問題