未定义的方法`encrypted_latitude&#39;对于#<location:0x007f574a4eef50> </location:0x007f574a4eef50>

时间:2014-05-19 15:21:41

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 encryption-symmetric attr-accessible

您好我使用对称加密(This one) gem来加密某些字段。我已生成所有键并遵循其中给出的所有步骤。但是当我试图在我的服务器上保存数据时,它会在这些行上抛出错误

 attr_encrypted :latitude
 attr_encrypted :longitude

错误是

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

我检查了类型,宝石的步骤,一切看起来都很好。 知道我错过了什么...当我从模型中删除这些线时,一切正常。另外,我为两个字段添加了attr_accessible,并为protected_attributes gem添加了attr_accessible工作

知道我哪里出错了。谢谢

2 个答案:

答案 0 :(得分:0)

看起来您可能没有单一的位置实例。你在查询结束时有第一个吗?

lat = Latitude.where( query ).first

答案 1 :(得分:0)

该错误表示encrypted_latitude表中没有名为locations的列。

来自doc

class User < ActiveRecord::Base
  # Requires table users to have a column called encrypted_bank_account_number
  attr_encrypted :bank_account_number