2つの類似した方法を1つにまとめようとしていますが、いくつか問題があります。
現在:
def self.tree
self.projects.sort_by(&:name).map do |assembly|
[ assembly, assembly.assemblies.map(&:tree) ]
end
end
def tree
[ self, self.assemblies.map(&:tree), self.parts ]
end
に変更してみました
def self.tree
self.build_tree( self.projects )
end
def tree
self.build_tree( [self] )
end
def build_tree( set )
set.sort_by(&:name).map do |assembly|
[ assembly, assembly.assemblies.map(&:tree), assembly.parts ]
end
end
しかし、私はただ得るundefined method 'build_tree' for #<Class:0x000000036a5588>
何か案は?