Ruby 配置Mongoid关系以返回已排序的对象
我有两个1-n关系的类。像这样:Ruby 配置Mongoid关系以返回已排序的对象,ruby,mongodb,mongoid,dsl,queryinterface,Ruby,Mongodb,Mongoid,Dsl,Queryinterface,我有两个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.me
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来获取加入最后一个的成员。我通过定义基于连接的成员和排序方法来实现这一点:
如何将此行为设置为默认行为?我不想避免额外的排序电话。这可能吗?如果可能,如何进行?我不想避免额外的排序调用?我不明白。为什么不添加一个方法,该方法具有明确的方法名?WiredPairie这是我目前的解决方案。我有一个方法latest\u band\u member,它执行band.members.sort.last。我想知道这是否可以通过Mongoid DSL实现自动化。我不想避免额外的排序调用?我不明白。为什么不添加一个方法,该方法具有明确的方法名?WiredPairie这是我目前的解决方案。我有一个方法latest\u band\u member,它执行band.members.sort.last。我想知道这是否可以通过Mongoid DSL实现自动化。
class Band
include Mongoid::Document
has_many :members, :order => :joined.asc
end
class Band
include Mongoid::Document
has_many :members, :order => :joined.asc
end