0

Des attr_encryptor(或attr_encrypted)與Postgresql一起使用? 的數據都是不保存,當我寫attr_encrypted和postgresql,它工作嗎?

@object.encrypted_value 

我的東西,但它永遠不會保存......或者,也許我做錯了什麼?

我的模型看起來像:

Model User < Activerecord::Base 
    attr_accessible :name, :email 
    attr_encrypted :email, :key => "asecretkey" 
end 

在我的DDB,我有用戶(姓名,encrypted_email,encrypted_email_iv,encrypted_email_salt)與字符改變(255)爲每個。

我的形式是像c.email(而不是c.encrypted_email,是這樣嗎?)

回答

0

什麼是你的模型是什麼樣子?如果你有一個@object.my_value = 'thing'那麼你的模型應該大致如下

class MyObject 
    attr_encrypted :my_value, :key => 'a secret key' 
end 

不要忘記分配一個值後打電話到#save的對象上。如果需要,您應該可以使用@object.encrypted_my_value獲得加密的有效負載。數據庫還需要一個名爲encrypted_my_value的字符串字段。

+0

已更新的第一篇文章 – eluus

+0

因此,當您調用@ object.save時,它不會將加密數據保存到數據庫中? (在你的情況將是一個叫做encrypted_email場) –

+0

隨着better_errors,當我寫「@user」,我沒有對任何電子郵件值,但是,當我寫「@ user.email或@ user.encrypted_email」,我有。這是正常的嗎? 當我保存,我有一個錯誤,因爲該領域的「電子郵件」根本不存在,這是正常的,因爲它是「encrypted_email」 ... – eluus

相關問題