2011-07-16 75 views
1

如何顯示從哈希值到不能在軌道上3

顯示哈希我有一個哈希在我的用戶模型類

GENDERS = {'1' => 'Male', '2' => 'Female', '3' => 'Secret'} 

而且我店爲每一位用戶的關鍵。 因此,當用戶閱讀他們的信息,我想顯示有關的關鍵 ,所以我做這樣的對應值:

<td><%= User::GENDERS[@user.gender] %></td> 

但我看不到任何東西顯示。

如果我這樣做,我看到右邊鍵顯示

<td><%= @user.gender %></td> 

那麼,什麼是顯示從散到編程頁面的值的正確方法?

謝謝。

回答

3

性別字段是字符串還是整數?如果它是一個整數,你需要哈希改變:即獲得對應於一個恆定性別

0

使用模式的訪問只是注意,這不是特別好作風。你更應該內User.rb寫一個方法:

GENDERS = {1 => 'Male', 2 => 'Female', 3 => 'Secret'} 

def gender_name 
    GENDERS[gender] 
end 

,然後在視圖中調用:

<td><%= @user.gender_name %></td> 

這樣,你就不會暴露那麼多模型的意見和保留一切透明。它還將允許您稍後修改顯示,而無需更改視圖。

1

GENDERS = {1 => 'Male', 2 => 'Female', 3 => 'Secret'}