我正在开发一个创建鱼骨图的应用程序。
我创建了几个模型来处理不同层次的因果关系。问题是,应用程序将使用一个表单向所有不同级别引入数据,那么我该怎么做呢?
我可以只有一个控制器插入信息到所有不同的表吗?
如果你打算用不同的逻辑来处理它们,一些简单的继承就可以了。
有一个基本模型
class Bone < ActiveRecord::Base
end
然后是继承它的三个
class BackBone < Person
end
class RibBone < Person
end
class OutSideBone < Person
end
然后你可以使用person作为基来处理person控制器中的所有三个类。如果需要的话,每个都可以有自己的逻辑。
如果需要的话,你甚至可以对自己做一个所有权,这在这种情况下可能会很有帮助。
class Bone < ActiveRecord::Base
has_many :bones
belongs_to :master_bone, :class_name => "Bone", :foreign_key => "bone_id"
end