在 Rails 项目中有这么一个情况,有 2 个 model
class A < ActiveRecord::Base
has_many :b
end
class B < ActiveRecord::Base
belong_to :a
def self.search_bs(params)
a = self.first.a
xxxx
xxxx
end
end
然后比如在 b 的 controller 里面有个 action show
def show
@bs = a.bs.search_bs(params)
end
而 self.search_bs(params) 这个方法需要找回对象 a,我一开始会直接通过 self.first.a 直接能找回对象 a,但是当我发现如果 a 的 bs 为空时,就产生报错,这里可能说在方法传入 a 不就完了嘛,但是因为这个 self 是一个# ,所以我感觉应该有方法能直接通过 self 直接找回 a,不知道 rails 是否有这样的方法呢?