如何验证两个字段的唯一性

joh*_*hnc 73 ruby-on-rails

我需要在添加对象(行)之前验证两个字段的唯一性.Employee_id和area_id是我的emp_area表中的两个字段.可以存在具有相同employee_id的多个记录和具有相同area_id的多个记录,但是没有两个记录可以具有相同的employee_id和相同的area_id.这有点像构成主键或唯一键的两个字段.

我怎样才能做到这一点.

谢谢

Nav*_*eed 97

那个解决方案呢?验证组合值

validates :employee_id, uniqueness: { scope: :area_id }
Run Code Online (Sandbox Code Playgroud)

  • 这似乎比`validates_uniqueness_of`更受欢迎,因为它允许您在同一表单上设置多个验证,例如`presence:true`. (3认同)

JRL*_*JRL 69

validates_uniqueness_of :employee_id, :scope => :area_id
Run Code Online (Sandbox Code Playgroud)