Ruby on rails 如何在每次部署时在模型中缓存一次文本文件的内容?

Ruby on rails 如何在每次部署时在模型中缓存一次文本文件的内容?,ruby-on-rails,ssl,ruby-on-rails-4,Ruby On Rails,Ssl,Ruby On Rails 4,我有一个文本文件,在其中我必须经常引用其中的值。我必须将数据库中的某些值与文本文件中的某些条目进行比较。这两个数据集都非常大。我不会将此文本文件(我将其称为changefile)加载到数据库中,因为在数据库中进行比较花费的时间太长。我不会将changefile放入数据库表中,因为它更容易从文件中读取,而且我不想每次发布新的changefile时都要搜索上传 我所做的是将数据库中的一组记录读入文本字符串,将文件读入文本字符串,然后进行比较 我有一个模型,其中changefile中的文本字符串用变量

我有一个文本文件,在其中我必须经常引用其中的值。我必须将数据库中的某些值与文本文件中的某些条目进行比较。这两个数据集都非常大。我不会将此文本文件(我将其称为
changefile
)加载到数据库中,因为在数据库中进行比较花费的时间太长。我不会将
changefile
放入数据库表中,因为它更容易从文件中读取,而且我不想每次发布新的
changefile
时都要搜索上传

我所做的是将数据库中的一组记录读入文本字符串,将文件读入文本字符串,然后进行比较

我有一个模型,其中changefile中的文本字符串用变量表示。看起来是这样的:

class Standard < ActiveRecord::Base

  def changes
    @changes ||= read_the_file_into_an_array
  end

end
不能让它工作。错误:

NameError: undefined local variable or method `get_changes' for MyObject:Class

我一点也不明白。为什么要将
get\u changes
作为
local
变量访问?

将其作为初始值设定项的一部分读取,并根据文件上下文将其加载到变量或配置中

签出类变量。我想这就是你要找的。这一页可能会让您开始:我知道如何使用示例中的静态值来实现这一点,但是否也可以对只触发一次的类变量使用setter?def self.changes@@更改| |=将_文件_读入_数组;endIt看起来我有更复杂的用例,因为这个类是另一个类的子类,我需要每个子类访问不同的文件。从文档中听起来好像@将为超类和所有子类设置该变量。这与我在类中放置内容的顺序有关。
NameError: undefined local variable or method `get_changes' for MyObject:Class