У меня есть пара простых моделей, которые связаны следующим образом:
МОДЕЛЬ
class Task < ActiveRecord::Base
belongs_to :user
validates :name, :presence => true, :message => 'Name cannot be blank, Task not saved'
end
class User < ActiveRecord::Base
has_many :tasks
end
В VIEW есть вызов:
user.tasks
<- затем я перебираю задачи </p>
Выпуск:
В модели задачи -
когда я использую:
validates :name, :presence => true , :message => 'Name cannot be blank, Task not saved'
Я получаю ошибку 500:
ActionView::Template::Error (uninitialized constant User::Task):
NameError in View file
когда я использую:
validates_presence_of :name
Все работает.
Я думал, что оба метода валидации, описанные выше, одинаковы ... проблема связана с ассоциациями и тем, как валидация связана с ассоциированными моделями. У меня есть догадка, что что-то происходит с тем, как вещи связаны, но это всего лишь догадка.
Любая помощь будет оценена. Большое спасибо.