Rails:FakeModel多次运行相同的验证

问题描述:

我们创建了一个FakeModel对象类,它继承Object, 以允许使用没有数据库表的模型。Rails:FakeModel多次运行相同的验证

它具有常规ActiveRecord模型的基本功能。 我们还在类中添加下列行:

include ActiveRecord::Validations 

问题是这样的: 一个新的请求被发送到所述控制器,并创建一个新对象从FakeModel类继承。 当该对象的验证运行时,它们运行多次。 更具体 - 每个请求发送到服务器, 验证运行一次比上次请求多一次。

我在服务器级别 猜测这里的东西“大棒”(当然,当我重新启动服务器,它重置回运行验证只有一次)

什么都可以的,该事业?

UPDATE:

加载ActiveModel解决方案是不可能的我,因为我使用Rails 2.3.8。我仍然需要弄清楚问题在哪里。

我会建议你使用的加载ActiveModel而不是从从头开始编写自己型号的发动机,看到this blog post for a tutorial你还可以观看this screencast

+0

谢谢,但这不是在到Rails 3 – Nadav 2011-06-14 07:28:07

+0

之前版本支持你是对的,你可能会更新您的文章告诉我们哪些您正在使用的导轨版本。 – 2011-06-14 07:43:31

+0

谢谢,更新。 – Nadav 2011-06-14 08:14:27

我在这里刺向黑暗,但它听起来像是不断被包含在每次验证模型加载/保存的时间。

你能告诉我们你包括它的地方吗?

在多动症的资源,而不是包括我们使用:

# make validations work just like ActiveRecord by pulling them in directly 
require "active_record/validations.rb" 
extend ActiveRecord::Validations::ClassMethods