0

こんにちは、対称暗号化(This one) gem を使用していくつかのフィールドを暗号化しています。すべてのキーを生成し、そこに記載されているすべての手順に従いました。しかし、サーバーにデータを保存しようとすると、これらの行にエラーがスローされます

 attr_encrypted :latitude
 attr_encrypted :longitude

エラーは

undefined method `encrypted_latitude' for #<Location:0x007f574a4eef50>

ジェムのタイプ、手順を確認しましたが、すべて問題ないようです。私が見逃しているものは何か...これらの行をモデルから削除するとすべて機能します。さらに、両方のフィールドに attr_accessible を追加し、attr_accessible を機能させるために protected_attributes gem を追加しました。

私がどこで間違ったのか..ありがとう

4

2 に答える 2

0

場所のインスタンスが 1 つもないようです。クエリの最後に最初がありますか?

すなわち

lat = Latitude.where( query ).first
于 2014-05-20T07:23:00.090 に答える
0

このエラーは、指定された列encrypted_latitudeがテーブルで使用できないことを意味しlocationsます。

ドキュメントから:

class User < ActiveRecord::Base
  # Requires table users to have a column called encrypted_bank_account_number
  attr_encrypted :bank_account_number
于 2014-05-20T07:24:19.983 に答える