ruby-on-rails-3 – Rails – 如何验证外键引用的行的存在

前端之家收集整理的这篇文章主要介绍了ruby-on-rails-3 – Rails – 如何验证外键引用的行的存在前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
鉴于“Rails方式”似乎不是使用外键约束,我正在寻找一种替代方法,这将允许我验证在我保存TableB中的对象之前,外键引用的行实际上存在于TableA中与table_a_id.

到目前为止,我找到的唯一资源(找不到链接博客文章被提及,2007年)似乎并不符合Rails 3.2,所以任何人都可以建议一种方式这样做

我正在寻找创建一个验证器来手动分配到我的模型中的相关属性,但是我无法使用validate_each(object,attribute,value)来解决这个问题.

解决方法

有一个插件,可以帮助你为belongs_to关联: Validates existence of.但是,也许你可以添加自己的验证?这样的东西呢
# Assuming your foreign key is user_id (which references the table User)
validate :user_id_exists

def user_id_exists
  return false if User.find_by_id(self.user_id).nil?
end

猜你在找的Ruby相关文章