2012-04-13 7 views
1
mongo => 2.0.4 
rails => 3.2.2 
ruby => 1.8.7 

Я следую учебнику (на самом деле это комбинация некоторых учебных пособий), и у меня есть относительно простая модель, и я работаю над CRUD. Все, что я прочитал, говорит поставить это:Ruby on Rails + mongoid: Validator не найден

class Foo 
    include Mongoid::Document 
    field :foo 
    validates :foo, presence: true 
end 

Все работало на первом, но я добавил validates линии. Я получаю эту ошибку:

syntax error, unexpected ':', expecting kEND 
    validates :task, presence: true 

Я должен предположить, что это связано с какой-то более старой версией рубина. Я также попытался это:

class Foo 
    include Mongoid::Document 
    field :foo 
    validates :foo, presence => true 
end 

... но потом я получаю

Unknown validator: 'FooValidator' 

в моем браузере, но просто Unknown validator: 'Validator' при работе guard (с использованием rspec). Я не уверен, в чем проблема, и Google не помог. Кажется, что любой из двух блоков, которые у меня есть, должен работать.

ответ

1

Изменение ...:foo, presence до ...:foo, :presence