我正在试图弄清楚如何获取对象属性的索引值。在搜索堆栈和railsapi之后,我仍然不确定我应该如何处理这个
@groups = Group.where(:group_id => 1).first
如何根据索引获得:participant_id? 例如,如何根据其位置获取First和Third:participant_id?
类似的东西:
= @group.participant_id(index position 1)
= @group.participant_id(index position 3)
答案 0 :(得分:1)
使用SQL / ActiveRecord,您可以使用limit
和offset
方法应用于“群组与参与者”关系:
# First
@group.participants.order(:id).offset(0).limit(1)
# Second
@group.participants.order(:id).offset(1).limit(1)
# First, second and third
@group.participants.order(:id).offset(0).limit(3)
或者,如果要在单个SQL查询中加载所有参与者:
@group.participants.order(:id)[index]
或者两种方法的结合。