我有两个型号
class Conversation
include Mongoid::Document
field :last_moderated_at, type: DateTime
has_many :messages
end
class Message
include Mongoid::Document
include Mongoid::Timestamps
end
我想获取在审核日期之后创建的所有邮件的列表,或者如果审核日期为nil,则获取所有邮件的列表
我原本期望以下工作
conversation.messages.where(
:created_at.gte => conversation.last_moderated_at
)
但显然与nil的比较失败(当last_moderated_at == nil
)
我别无选择,只能使用if/else
或者是否存在类型greater than
的mongoDB运算符,与nil日期相比也可以运行?
答案 0 :(得分:0)
语法正确。它至少适用于Mongoid版本6。