1

我在表中有一个字段,该字段Order由其他值填充,如下例所示:

company_name: A-Z Traders
company_tel: (111) 111 1111
MD5_hash_field: A-Z Traders|(011) 111 1111

这正在通过隐藏字段创建记录。

我需要的是在MD5_hash_field将 MD5 保存到数据库之前对其进行哈希处理。

尝试添加以下内容:

before_create :hash_field

def hash_field
  self.md5_field = Digest::MD5.hexdigest(self.md5_field)
end

但似乎没有做任何事情

编辑:

它确实在一定程度上起作用

<%= f.hidden_field :checksum, :value => '10011013800|Customer1|3299|ZAR|http://localhost|2012-01-30 18:30:00|secret' %> 

   Result should be: 31d1244f08a62f0551e9263c4835ba88

   but getting : aae1ee590e4d4e08e7c0363cca90a22b

解决了:

This Does Work! - Fellow Developers when working on multiple Applications make sure you are restarting the correct App. LOL
4

1 回答 1

0

你不能把代码改成

def hash_field
  p self.md5_field
  self.md5_field = Digest::MD5.hexdigest(self.md5_field)
end

看看它在日志中给了你什么?

于 2013-01-25T13:55:46.030 回答