0

我目前正在执行以下操作:

app/models/
  user.rb
  finders/user_finders.rb
  attributes/user_attributes.rb
  validations/user_validations.rb

等等许多“大”模型。

然后,要加载它们,我执行以下操作:

app/models/user.rb

load 'attributes/user_attributes.rb'
load 'finders/user_finders.rb'
load 'validations/user_validations.rb'

user_{stuff}.rb 只是重新打开 User 类。

但问题是我的 user_{stuff} 在生产或测试期间被加载了两次(虽然不是开发),并且它用别名破坏了一些东西。

实现这一目标的 Rails 方式是什么?

4

1 回答 1

0

我过去常常concerned_with处理这种情况 - 请参阅此处- 但以这种方式做事存在问题 - 请参阅文章末尾的评论和这篇文章。毫无疑问,最好的解决方案是设计你的应用程序,这样模型就不会变得太大——但显然事情并不总是这样,这就是我最终使用它的原因。

于 2011-11-13T07:25:27.133 回答