Ruby on rails 在我的Rails应用程序中,如何向模型添加两个对象?
这个标题听起来可能不太对劲,但请原谅,我在windows开发十年后第一次学习Rails。目前,我有一个名为Drill的模型,它应该包含两个练习。基于我目前对Rails的了解,为了实现这一点,我在训练和练习模型之间建立了许多关联Ruby on rails 在我的Rails应用程序中,如何向模型添加两个对象?,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,这个标题听起来可能不太对劲,但请原谅,我在windows开发十年后第一次学习Rails。目前,我有一个名为Drill的模型,它应该包含两个练习。基于我目前对Rails的了解,为了实现这一点,我在训练和练习模型之间建立了许多关联 class Drill < ActiveRecord::Base has_many :exercises, :dependent => :destroy end class-Drill:破坏 结束 但我不想要一个开放式的练习列表,相反,我希望有两个对单
class Drill < ActiveRecord::Base
has_many :exercises, :dependent => :destroy
end
class-Drill:破坏
结束
但我不想要一个开放式的练习列表,相反,我希望有两个对单个练习对象的引用,一个称为left_drill,另一个称为right_drill。根据文档,我将代码更改为
class Drill < ActiveRecord::Base
has_one :right_drill, :class => :exercise
has_one :left_drill, :class => :exercise
end
class-Drill:练习
有一个:左钻,:class=>:练习
结束
但我不知道这是否正确,我很难测试它,因为我不知道如何分别调整运动模型。到目前为止,演习模式保持不变
class Exercise < ActiveRecord::Base
belongs_to :drill
end
课堂练习
在我继续阅读文档的同时,我很难想出如何实现这一点,我希望有人能给我一些指导
非常感谢你的智慧 您所拥有的是正确的,尽管通常显式类名是以字符串形式给出的,如下所示:
class Drill < ActiveRecord::Base
has_one :left_drill, :class => "Exercise"
has_one :right_drill, :class => "Exercise"
end
您可能希望考虑重命名它们“代码>左Type练习和
my_drill.left_drill
my_drill.right_drill