MongoMapper получает данные из запроса

Я пытаюсь вернуть User с помощью MongoMapper:

Вот пользователь

1.9.3-p194 :004 > User.where(:email => '[email protected]').all.count
=> 1 

1.9.3-p194 :005 > User.where(:email => '[email protected]').first.class
=> User

Выглядит хорошо до сюда ...

1.9.3-p194 :005 > u = User.where(:email => '[email protected]').first.class
=> User

1.9.3-p194 :007 > u.email
    NoMethodError: undefined method `email' for User:Class
    from /home/zensavona/.rvm/gems/ruby-1.9.3-p194/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/dynamic_querying.rb:39:in `method_missing'
    from (irb):7
    from /home/zensavona/.rvm/rubies/ruby-1.9.3-p194/bin/irb:16:in `<main>'

Насколько я понимаю, u содержит экземпляр User, но если это так, почему я не могу получить доступ к свойствам u?


person Zen    schedule 06.05.2013    source источник


Ответы (1)


Вы назначаете класс User переменной u вместо экземпляра User, который фактически содержит данные.

Попробуйте это вместо этого:

u = User.where(:email => '[email protected]').first
person potatosalad    schedule 06.05.2013
comment
Спасибо! Я не думаю сегодня днем! - person Zen; 06.05.2013