根据 @object 中的位置/索引获取属性的值?

发布于 2025-01-02 09:25:28 字数 412 浏览 0 评论 0原文

我试图弄清楚如何获取对象属性的索引值。在搜索堆栈和railsapi之后,我仍然不确定应该如何处理这个

    @groups = Group.where(:group_id => 1).first
  • 包含属性 :participant_id 和 has_many :participants 的 Groups 模型,

如何根据其索引获得 :participant_id ? 例如,如何根据其位置获取第一个和第三个:participant_id?

像这样的东西:

= @group.participant_id(index position 1)
= @group.participant_id(index position 3)

I'm trying to figure out how to get the index value of an objects attribute. And after searching stack and the railsapi I'm still not sure how I should approach this

    @groups = Group.where(:group_id => 1).first
  • Groups model would contain attribute :participant_id and has_many :participants

How would one be able to get a :participant_id based on its index?
For example how to get the First and Third :participant_id based on its position?

Something like:

= @group.participant_id(index position 1)
= @group.participant_id(index position 3)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小女人ら 2025-01-09 09:25:28

使用 SQL/ActiveRecord,您可以使用应用于“组到参与者”关系的 limitoffset 方法:

# 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]

或者,两种方法的结合。

Using SQL/ActiveRecord, you may use limit and offset methods applied to the "Group to Participants" relation:

# 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)

Or, if you want to load all participants in a single SQL query :

@group.participants.order(:id)[index]

Or, a combination of both approaches.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文