多父子班(铁路)

时间:2013-09-04 13:54:23

标签: ruby-on-rails class controller

我的应用中有一个Planning课程。该类可以属于三个不同的类(SystemSubsystemSubsubsystem),具体取决于用户的意愿。更清楚:用户必须能够从这3个类中的任何一个创建Planning

我对这些模型没有任何问题,但在plannings_controller#new中,我不知道该怎么做。

如果母班是一个系统,这就是new方法的样子:

@system = System.find(params[:system_id])
@planning = @system.plannings.build

respond_to do |format|
  format.html # new.html.erb
  format.json { render json: @planning }
end

有谁能告诉我管理计划控制器的方法,以便知道哪个班级是母班?

非常感谢!

2 个答案:

答案 0 :(得分:0)

如果通过

  

多父子课程

你指的是多重继承,你知道Ruby中没有这样的东西。

答案 1 :(得分:0)

http://guides.rubyonrails.org/association_basics.html(多态)

class Planning < ActiveRecord::Base
  belongs_to :plannable, :polymorphic => true
end

class System < ActiveRecord::Base has_one :planning, :as => 'plannable' end

class Subsystem < ActiveRecord::Base has_one :planning, :as => 'plannable' end