2017-03-27 53 views
0

我有一個Rails 5應用程序。在這個應用程序中,我使用方法get_values創建了一個服務ValueService。這個方法我想返回值的數組:服務方法包裝對象在Rails 5中的對象

def get_values 
[ 
    'value_1' => 1, 
    'value_2' => 2 
] 
end 

在我的控制,我使用這項服務,我做這樣的事情:

values = ValueService.new().get_values 

但現在,讓我的價值觀我必須做:

values[0]['value_1'] 

爲什麼這個額外的包裝?我想訪問我的價值簡單地:

values['value_1'] 
+3

在捲曲把它包y大括號? {value_1:1,value_2:2},或者您可以調用其上的扁平方法來刪除外部的空白級別。 – bkunzi01

回答

0

此代碼

[ 
    'value_1' => 1, 
    'value_2' => 2 
] 

返回數組與([{"value_1"=>1, "value_2"=>2}]

正如已經在意見提出,你需要在它一個哈希元素使用文字,而不是訪問散大括號到對象的關鍵

{ 
    'value_1' => 1, 
    'value_2' => 2 
}