Active Record-即使经过验证也重复属性值

时间:2018-07-05 17:17:12

标签: ruby-on-rails activerecord

我有一个基于范围的唯一性验证模型(我正在使用Rails 5):

gss30

即使进行了验证,我也注意到对于同一validates_uniqueness_of :n_pacote, scope: :ecg_id 重复的n_pacote值。我还注意到它们几乎是同时创建的:

ecg_id

它们是通过可能被多次调用的api调用创建的。我该如何解决?预先感谢

编辑: 这是3条记录的所有属性,这些3条记录的相同[Thu, 05 Jul 2018 14:07:59 -03 -03:00, Thu, 05 Jul 2018 14:07:58 -03 -03:00, Thu, 05 Jul 2018 14:07:58 -03 -03:00] 的值具有相同的n_pacote

ecg_id

1 个答案:

答案 0 :(得分:1)

我面临类似的问题,但是后来我使用数据库级别的唯一性来避免这一问题。当涉及到唯一性时,Rails验证并不是100%可靠。

为了安全起见,请将此验证添加到您的数据库(MySQL ex)上。

add_index :table_name, [:n_pacote, :ecg_id], unique: true