【发布时间】:2012-01-01 21:52:42
【问题描述】:
我想创建一个哈希,它结合了创建用户的 user_id + 记录的 ID 来生成 MD5 哈希,但仅限于创建记录时。 (原因很冗长,但本文将其提取出来)。
我正在尝试:
class BlogPost < ActiveRecord::Base
after_create :hash_this
private
def hash_this
self.info_md5_hashed = (id.to_str + creator_user_id).my_MD5_hash_method
end
end
如何确保info_md5_hashed 字段实际保存到数据库中?
如果我使用before_create,我会假设 ID 还不可用? :(
如果我使用 after_create,我会假设 ID 现在可用- 但我是否需要以某种方式再次保存以存储新计算的 info_md5_hashed 字段值?
【问题讨论】:
-
您能否发布更多关于您要解决的更广泛问题的具体信息?如果我对您为什么需要这个有更多了解,我可以更新我的答案。在创建时生成附加到用户的不可变 ID(不是主键)是另一种选择......例如一个 UUID。
标签: ruby-on-rails ruby authentication hash md5