Я замечаю различия между хеш-объектом в Ruby 1.8.7 и хеш-объектом в Rails 3.0.10.
Например, в 1.8.7 irb
я получаю:
1.8.7 :001 > {}.try(:method)
NoMethodError: undefned method `try' for {}:Hash
from (irb):1```
Однако из консоли рельсов 3.0.10 я получаю:
1.8.7 :003 > {}.try(:method_x)
NoMethodError: undefined method `method_x' for {}:Hash
from (irb):3:in `try'
from (irb):3
Это меня удивляет, потому что у меня сложилось впечатление, что try
определенный в Object, который является предком Hash, и try
вернет nil вместо выдачи NoMethodError.
Что мне не хватает?