Activerecord:查找表中的第n行

ame*_*ior 1 ruby postgresql activerecord ruby-on-rails

{ topic: "Foo", opportunity: Opportunity.limit(15)[0] },
{ topic: "Foo", opportunity: Opportunity.limit(15)[2] },
{ topic: "Foo", opportunity: Opportunity.limit(15)[7] },
{ topic: "Foo", opportunity: Opportunity.limit(15)[9] },
{ topic: "Foo", opportunity: Opportunity.limit(15)[11]}
Run Code Online (Sandbox Code Playgroud)

Opportunity.limit(15)[n]Active Record 不提供任何便利功能吗?

AbM*_*AbM 5

您正在寻找offset.

另请注意,不将 an 传递order给查询并不能保证查询将返回按主键排序的实例。所以最好传递一个显式的order.

Opportunity.order(:id).limit(1).offset(2)