我的数据库包含以下字段:id
,q_id
,text
,session
等,我已经有2条记录。我想用SHA1 alghoritm散列每一行(当然每一行都是唯一的)。我试过这个:
@w = Digest::SHA1.hexdigest(id+q_id+text+session)
但它不起作用。
答案 0 :(得分:28)
SHA不是加密,而是创建cryptographic hash。如果那仍然是您想要做的,我的猜测是id
和q_id
是Fixnums,需要转换为字符串。
@w = Digest::SHA1.hexdigest(ans.id.to_s + ans.q_id.to_s + ans.text + ans.session)
我也喜欢使用String文字,因为它很明显我们正在处理字符串
@w = Digest::SHA1.hexdigest("#{id}#{q_id}#{text}#{session}")