1

我有两个具有 1-n 关系的类。像这样:

class Band
  include Mongoid::Document
  has_many :members
end

class Member
  include Mongoid::Document
  field :name, type: String
  field :joined, type: Date
  belongs_to :band
end

现在,当我打电话时,band.members我得到了成员对象。我想要的是,如果我打电话band.members.last得到最后加入的成员。我通过定义<=>方法Member和排序来实现这一点joined

band.members.sort.last

我怎样才能使这种行为默认?我不想避免额外的排序调用。这可能吗?如果可以,怎么做?

4

1 回答 1

10
class Band
  include Mongoid::Document
  has_many :members, :order => :joined.asc
end
于 2013-09-24T12:51:42.430 回答