Rails 4 アプリケーションがあり、attr_encrypted
gem を使用して SSN を暗号化された形式で DB に保存しています。
私がやろうとしているのは、フォームの編集/表示時に最後の 4 桁のみを表示することです。そのため、基本的に SSN が保存されると、ユーザーはフォームで完全な SSN を見ることができなくなります。だから私は次のことをやってみました、
class PaymentData < ActiveRecord::Base
attr_encrypted :ssn, key: 'secret'
alias_method :org_ssn, :ssn
def ssn
org_ssn.reverse # just a way of testing if this works
end
end
私が見ているのは、を使用するショーフォームで、<%= @payment_data.ssn %>
正常に動作することです。しかし、を使用している私の編集フォームでは<%= f.input :ssn %>
、編集フィールドに完全な SSN が事前入力されています。
注:simple_form
フォームに gem を使用していますが、基本的な<%= f.text_field :ssn %>
構文を使用すると、同じ完全な SSN が表示されます。
ここで何が間違っていますか?