2010-05-01 8 views
0

celui-ci crée une erreur:dans ruby, comment faites-vous ce travail de hachage imbriqué?

@settings = { 
    :tab1 => { 
     :name => { 
     :required => true 
     }, 
     :description 
    } 
    } 

besoin de changer: descrpition à: description => {}, mais je n'ai pas de valeurs: Description donc je veux qu'il demeurera inchangé (sans empty => {})

Pourriez-vous me montrer la meilleure façon de gérer ce genre de situation?

merci d'avance

+0

Ceci est une question très mal posée. –

Répondre

6

Vous pouvez lui affecter zéro.

@settings = { 
    :tab1 => { 
     :name => { 
     :required => true 
     }, 
     :description => nil 
    } 
    } 
2

Hash Ruby avant 1.9 n'est pas ordonné, et même après, il est un peu maladroit, comme AFAIK vous ne pouvez pas réorganiser les éléments, etc., donc si vous voulez aussi de préserver l'ordre des éléments, vous pouvez pensez à utiliser array au lieu de hash:

@settings = { 
    :tab1 => [ 
    { 
     :field => :name, 
     :required => true 
    }, 
    { 
     :field => :description 
    } 
    ] 
} 
Questions connexes