Я пытаюсь понять это сам, вот лучшее решение, которое я нашел до сих пор:
Пока я не нашел метод проверки допустимости отдельного свойства, как в:
t.wearer.valid?
Я обнаружил, что вы можете проверить достоверность всего объекта перед сохранением, а затем проверить, есть ли ошибки в интересующем вас свойстве, например:
if t.valid?
# Everything is valid.
else
# There were errors, let's see if there were any on the 'wearer' property...
puts t.errors.on(:wearer)
end
Я знаю, что это не обязательно тот ответ, который вы ищете, но это лучшее, что я придумал до сих пор. Я отправлю ответ, если найду что-нибудь получше.