Ruby on rails 有没有一种方法可以实例化ActiveRecord模型而不必连接到它的数据库?

Ruby on rails 有没有一种方法可以实例化ActiveRecord模型而不必连接到它的数据库?,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我刚刚意识到,标准ActiveRecord实际上会在您访问数据库时访问数据库 person = Person.new(:name => "test") 我怀疑ActiveRecord这样做是为了检查哪些字段可用于模型 然而,我们的遗留数据库只是偶尔可用。这意味着我们的测试套件不能一直运行。在没有数据库的情况下,有什么诀窍可以让它工作吗 如果不可能,我们考虑了一些替代方案: 拥有数据库的本地副本并处理该副本 使用另一个解决此问题的ORM() 欢迎提供任何建议。只有在所接触的数据没有从其

我刚刚意识到,标准ActiveRecord实际上会在您访问数据库时访问数据库

person = Person.new(:name => "test")
我怀疑ActiveRecord这样做是为了检查哪些字段可用于模型

然而,我们的遗留数据库只是偶尔可用。这意味着我们的测试套件不能一直运行。在没有数据库的情况下,有什么诀窍可以让它工作吗

如果不可能,我们考虑了一些替代方案:

  • 拥有数据库的本地副本并处理该副本
  • 使用另一个解决此问题的ORM()

欢迎提供任何建议。

只有在所接触的数据没有从其他地方更改的情况下,才可以使用本地副本!否则,很快就会发生数据库灾难


你的怀疑也是对的。ActiveRecord检查数据库中的字段,因此需要连接。当你想继续使用ActiveRecord时,我认为没有办法解决这个问题。我认为您需要解决潜在的问题,并运行始终可用的数据库

只有在所接触的数据没有从其他地方更改的情况下,才能使用本地副本!否则,很快就会发生数据库灾难


你的怀疑也是对的。ActiveRecord检查数据库中的字段,因此需要连接。当你想继续使用ActiveRecord时,我认为没有办法解决这个问题。我认为您需要解决潜在的问题,并运行始终可用的数据库

尝试
attr\u访问器:您的\u方法\u名称

您也可以使用
read\u属性
/
write\u属性
尝试
attr\u访问器:您的\u方法\u名称
您也可以使用
read\u属性
/
write\u属性