понимание validates_associated - PullRequest
1 голос
/ 17 мая 2011

Мое понимание validates_associated, согласно руководству по рельсам, заключается в том, что оно должно гарантировать, что связанная запись действительна перед сохранением.Например:

class ForumPost < AR:Base
  has_many :replies
end

class ForumPostReply < AR:Base
  validates_length_of :content, :minimum => 20
end

Модульный тест:

forum_post = Factory.create(:forum_post)
forum_post.replies.build(:content => 'some content')   #content too short, not valid
forum_post.save
forum_post.errors.should be_empty  #empty because reply was not expected to be validated

Стоит ли ожидать, что сохранение не будет выполнено, учитывая тот факт, что я не указал validates_associated: ответы в моей модели ForumPost?Похоже, что это просто отлично, что я не ожидал, так как я не указал связанные валидаты.

Так что, если модели ведут себя так, без указания validates_associated, то что делает validates_associated?

1 Ответ

2 голосов
/ 19 мая 2011

Думал, я бы переместил это к ответу.Вы говорите,

«Должен ли я ожидать, что это сохранение не будет выполнено, учитывая тот факт, что я не указал validates_associated :replies в моей модели ForumPost?»

Нет, вы должны ожидать его сохранения, потому чтовы не указываете validates_associated :replies

"Кажется, что это просто отлично, что не соответствует ожиданиям, так как я не указал связанные проверки."

Кажетсясохранить просто отлично, потому что не проверяет связанное, потому что вы его не указали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...