Rails:你已经完成了多态关联-这会起作用吗?

一个可以有许多事件,每个事件可以有一条多态可事件记录。如何指定人员可事件记录之间的关系

以下是我的模型:

类事件<ActiveRecord::Base
属于某人
属于:可事件,:多态=>符合事实的
终止
班级餐<ActiveRecord::Base
has_one:event,:as=>可能发生
终止
课堂锻炼<ActiveRecord::Base
has_one:event,:as=>可能发生
终止

主要问题涉及人员类:

班级人员<ActiveRecord::Base
你参加过很多活动吗
有许多:可事件,:至=>:事件#这是正确的吗???
终止

我是说有很多:eventables,:through=>:事件像我上面做的那样

还是我必须这样把它们都说出来:

有很多:食物,:到=>:事件
有很多:锻炼,:通过=>:事件

如果你能找到一种更简单的方法来完成我的目标,我洗耳恭听!:-)

你必须做到:

班级人员<ActiveRecord::Base
你参加过很多活动吗
有很多:饭菜,:到=>:事件:源=>:可预见的,
:source_type=>“膳食”
有很多:锻炼,:通过=>:事件:源=>:可预见的,
:source_type=>“锻炼”
终止

这将使您能够执行以下操作:

p=Person.find(1)
#吃饭
p、 每顿饭| m|
放m
终止
#得到一个人的锻炼
p、 训练。每项都做| w|
把w
终止
#为此人获取所有类型的事件
p、 事件。每个事件都有|
使e
终止

发表评论