Ruby on rails RubyonRails:验证关联的存在与否

Ruby on rails RubyonRails:验证关联的存在与否,ruby-on-rails,activerecord,rails-activerecord,Ruby On Rails,Activerecord,Rails Activerecord,我想知道rails中是否有一种方法可以验证关联的存在(以及数据库中的存在),而无需在可能的情况下使用任何额外的gem(即关联的“属于”对象在数据库中并且在保存之前有效) 验证是否存在无效,因为您可以使用新创建且未保存的对象 我知道所有关于验证gem存在的信息,但如果可能的话,我想避免使用它。您可以结合使用 validates\u关联的将对关联模型(您必须在该模型中定义)运行验证 验证是否存在关联验证是否存在关联 编辑 回应您的评论:这不是验证db中存在性的常见场景,但您可以这样做: valida

我想知道rails中是否有一种方法可以验证关联的存在(以及数据库中的存在),而无需在可能的情况下使用任何额外的gem(即关联的“属于”对象在数据库中并且在保存之前有效)

验证是否存在
无效,因为您可以使用新创建且未保存的对象

我知道所有关于
验证gem存在的信息,但如果可能的话,我想避免使用它。

您可以结合使用

validates\u关联的
将对关联模型(您必须在该模型中定义)运行验证

验证是否存在关联
验证是否存在关联

编辑

回应您的评论:这不是验证db中存在性的常见场景,但您可以这样做:

validate :association_exists

def association_exists
  # query database for the association record and return true if it exists
  # self is model instance inside this method
end

如果关联的对象有效且存在,但未保存,那么如何强制不属于常见场景的对象的完整性呢?也许我说得不够清楚。。。对我来说,这似乎是我在每种模式下都会做的事情。