【发布时间】:2011-03-09 04:56:04
【问题描述】:
我正在尝试将大型模型拆分为多个文件以进行逻辑组织。所以我有两个文件:
model1.rb
class Model1 < ActiveRecord::Base
before_destroy :destroying
has_many :things, :dependent=>:destroy
def method1
...
end
def method2
...
end
end
require 'model1_section1'
model1_section1.rb
class Model1
def method3
...
end
def self.class_method4
...
end
end
但是当应用程序加载时,有一个对 Model1.class_method4 的调用,我得到:
undefined method `class_method4' for #<Class:0x92534d0>
我也尝试过这个要求:
require File.join(File.dirname(__FILE__), 'model1_section1')
我在这里做错了什么?
【问题讨论】:
-
@Kaleb Brasee 这应该有帮助吗?您是否对(完全制造的)类和方法名称做出反应,或者是否有合理的理由进行偏离主题的讽刺评论?
-
只是在这里寻找语言语法/结构的帮助,而不是重构或优化,当然也不是为了技术术语下降。 这不是真正的代码 - 当然有味道。
-
我也很惊讶这不起作用:我认为这就是 Ruby 中所谓的“类重新开放”。
-
您是否尝试过要求第二个文件中的第一个文件,而不是第一个中的第二个文件?
标签: ruby-on-rails model