加密数据的验证



在存储到数据库之前,我使用gem 'attr_encrypted'加密了所有用户的私有数据。例如,我有'email_addresses'表,其中包含'encrypted_email'列。这个gem在我调用object时解密数据。或者当我搜索邮件的时候。但是我对这一列的验证有疑问。

我对这个表和其他表进行了以下验证:

validates_length_of :email, :within => 3..100
validates_numericality_of :post_code

我应该在验证之前解密数据,但我不知道如何使用内置的Rails工具来做到这一点。我不想为此发明自定义验证。请建议。

不需要在rails端运行db查询的验证,因此您可以将方法而不是列传递给验证方法

validates :decrypted_email, length: { within: 3..100 }
def decrypted_email
  # decrypt email here
end

相关内容

  • 没有找到相关文章

最新更新