Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Mongoid通过嵌入的子对象查询父对象(使用两个值)_Ruby On Rails_Mongodb_Mongoid_Mongoid3_Mongoid4 - Fatal编程技术网

Ruby on rails Mongoid通过嵌入的子对象查询父对象(使用两个值)

Ruby on rails Mongoid通过嵌入的子对象查询父对象(使用两个值),ruby-on-rails,mongodb,mongoid,mongoid3,mongoid4,Ruby On Rails,Mongodb,Mongoid,Mongoid3,Mongoid4,我有一个联系人模型,其中嵌入了电子邮件模型 我正在尝试查询联系人记录,以查找所有具有“Email_type”匹配字符串的电子邮件地址的联系人,并且该电子邮件的“unsubscribed”标志为false 到目前为止,我最成功的作品是: Contact.where({"emails.email_type" => 'Work','emails.unsubscribed' => false}) 但这会发现任何电子邮件地址(如果是“工作”类型)或任何电子邮件地址被取消订阅的联系人-这意味

我有一个联系人模型,其中嵌入了电子邮件模型

我正在尝试查询联系人记录,以查找所有具有“Email_type”匹配字符串的电子邮件地址的联系人,并且该电子邮件的“unsubscribed”标志为false

到目前为止,我最成功的作品是:

Contact.where({"emails.email_type" => 'Work','emails.unsubscribed'  => false})
但这会发现任何电子邮件地址(如果是“工作”类型)或任何电子邮件地址被取消订阅的联系人-这意味着返回的联系人太多


我需要做的是找到联系人,如果任何电子邮件地址类型为“工作”,并且该电子邮件地址也未被订阅。。。有什么方法可以做到这一点吗?

结果是语法非常简单,如果很难找到的话

Contact.elem_match("emails" =>  { email_type: type, unsubscribed: false })
埃利姆·努比