Comme il s'agit d'une instance (objet) créée par une classe qui hérite de l'enregistrement actif, il est possible d'obtenir la valeur à l'aide de la méthode .method. Comme ce n'est pas la notation Ruby habituelle, je veux obtenir la valeur de l'objet de hachage, donc si je l'écris avec des points, une erreur se produira.
example.rb
hash = {name: 'hoge', email: '[email protected]'}
hash[:name]
=> "hoge"
# .J'obtiens une erreur lorsque j'essaye de l'obtenir avec
hash.name
NoMethodError (undefined method `name' for {:name=>"hoge", :email=>"[email protected]"}:Hash)
example.rb
#Hash, en supposant que la classe Hash a déjà été définie.Créer une instance avec une nouvelle
hash = Hash.new(name: 'hoge', email: '[email protected]')
hash[:name]
=> "hoge"
hash.name
=> "hoge"
Recommended Posts