在 Mongoid (Rails) 中,我有 3 个模型:File、Version和User。版本是 embedded_in File,并且File和Version都属于User (尽管对于File中的所有Version不一定相同)。
现在我想检索属于特定User或嵌入在属于同一User的File中的所有Version。
我试过了:
- 几乎任何东西
Version.<something>
,总是 0 结果(可能是因为Version不是顶级文档?) File.any_of(user: user, 'versions.user': user)
: NoMethodError: #<User:0x00000007cd9400> 的未定义方法 `bson_type'File.any_of(user: user, 'versions.user_id': user.id)
: 只返回属于User的File,而不是嵌入属于用户的Version的File
如何以数据库友好的方式实现这一点(不获取所有File并迭代它们的Version)?