Добавить проверку в gem Act_as_commentable

Я использую драгоценный камень с именем act_as_commentable

Я добавил пользовательский столбец в миграции, как: recipient_id

Затем я сгенерировал модель комментариев в соответствии с документацией:

rails g comment

Теперь в моем Comment.rb есть следующая строка:

validate :comment, :recipient_id, :presence => true

Замечания: comment колонка уже добавлена ​​самим гемом

Тем не менее, после следующей документации, когда я умышленно запускаю следующее:

commentable = Post.create(:title => ......)
comment = commentable.comments.create
comment.comment = "Some comment"
comment.recipient_id = nil
comment.save!

Объект комментария выглядит так:

<Comment id: 1, comment: "Some comment", commentable_id: 1, commentable_type: "Post", recipient_id: nil, created_at: "2015-06-13 09:41:23", updated_at: "2015-06-13 09:41:23">

Почему это не проверяет наличие recipient_id?

1 ответ

Решение

Вы звоните validate вместо validates, Они оба разные.

Так должно быть:

validates :comment, :recipient_id, :presence => true
Другие вопросы по тегам