以下是需要轉換爲hash
的string
。如何在不使用eval的情況下將字符串轉換爲ruby/rails中的散列?
"{:status => {:label => 'Status', :collection => return_misc_definitions('project_status') } }"
我們不能用eval
因爲eval
將字符串中的執行方法return_misc_definitions('project_status')
。是否有純字符串操作來完成ruby/rails中的這種轉換?感謝幫助。
你能舉一個例子,你如何創建一個散列,而不是**在過程中調用該方法? –
如果您使用'eval()',**確保在您嘗試評估的散列**中沒有用戶輸入。設想一個用戶發佈一個像這樣的散列:'{:a => User.delete_all}'! – MrYoshiji
這是什麼用例?你從哪裏得到你的字符串?恕我直言,這不是一個好主意。必須有更好的方式來以更安全的方式輸入數據 – Tilo