Model 如果mongoid中的一个字段存在于另一个模型中,则获取对象数组
我正在尝试这样做: 我有一个用户模型,一个消息模型 对于某个用户,他/她可能有很多消息(存储在数组中) 现在我想获取用户收到的所有消息,但需要检查发送消息的用户是否仍在数据库中 这个过程是: 用户有一个收件箱,它是一个数组,存储其他人发送给用户的所有消息 该消息包含一个from_user,它是发送用户的id(字符串)。如果用户已被删除,则消息将保留在系统中 所以我想做一个如下的查询: Message.find(thisUser.inbox)。其中(模型中存在用户的id) 这意味着在从消息模型获取记录时检查用户的id是否存在 我该怎么做Model 如果mongoid中的一个字段存在于另一个模型中,则获取对象数组,model,mongoid,exists,Model,Mongoid,Exists,我正在尝试这样做: 我有一个用户模型,一个消息模型 对于某个用户,他/她可能有很多消息(存储在数组中) 现在我想获取用户收到的所有消息,但需要检查发送消息的用户是否仍在数据库中 这个过程是: 用户有一个收件箱,它是一个数组,存储其他人发送给用户的所有消息 该消息包含一个from_user,它是发送用户的id(字符串)。如果用户已被删除,则消息将保留在系统中 所以我想做一个如下的查询: Message.find(thisUser.inbox)。其中(模型中存在用户的id) 这意味着在从消息模型获取
谢谢大家! 您描述的功能类似于连接。在MongoDB中,这种行为有两种选择
- 将一个模型嵌入到另一个模型
- 将查询拆分为两个单独的查询
user = User.find(user_id)
messages = Message.where(user_id: user.id)