Ruby on rails Rails在控制台中查找范围

Ruby on rails Rails在控制台中查找范围,ruby-on-rails,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3.2,轨道3.2 如何在控制台中找到上次记录的范围 Distributor.find_by_id(2..last) 谢谢您只需执行以下操作: Distributor.where('id >= 2') 这也可以,但它执行两个查询: Distributor.where(id: 2..Distributor.last.id) last(limit=nil) 查找最后一条记录(如果提供了参数,则查找最后N条记录)。如果未定义订单,它将按主键进行订单 Person.last # returns th

轨道3.2

如何在控制台中找到上次记录的范围

Distributor.find_by_id(2..last)
谢谢

您只需执行以下操作:

Distributor.where('id >= 2')
这也可以,但它执行两个查询:

Distributor.where(id: 2..Distributor.last.id)
last(limit=nil)

查找最后一条记录(如果提供了参数,则查找最后N条记录)。如果未定义订单,它将按主键进行订单

Person.last # returns the last object fetched by SELECT * FROM people
Person.where(["user_name = ?", user_name]).last
Person.order("created_on DESC").offset(5).last
Person.last(3) # returns the last three objects fetched by SELECT * FROM people.


尝试使用
分发服务器。其中('id>=2')
有效。我只是觉得这个范围可以支持第一个和最后一个(很好。我补充了一个例子,并用另一个例子来回答。希望能有所帮助。
    def last(limit = nil)
      if limit
        if order_values.empty? && primary_key
          order(arel_table[primary_key].desc).limit(limit).reverse
        else
          to_a.last(limit)
        end
      else
        find_last
      end
    end