【发布时间】:2012-05-08 20:53:03
【问题描述】:
假设我有一个简单的数据库,我正在尝试查找所有会说英语和西班牙语和/或英语和法语(但不是西班牙语和法语)的用户。我有一个users 表,其中包含一些这样设置的记录:
{
"username": "jdoe",
"languages": ["english", "spanish", "french"]
}
当我这样搜索时,我得到了预期的结果:
db.find({ "languages" : { $all:['english', 'spanish'], $all:['english', 'french'] } })
但我不确定如何使用 Cake。我可以像这样匹配一个语言对:
$this->User->find('all', array('conditions' => 'User.languages' => array('$all' => array('english', 'spanish'))));
但我不知道如何搜索多对;数组数组似乎没有这样做。
这是别人开始的项目,所以我对 CakePHP 或 MongoDB 的细微差别不是特别熟悉;我有一种感觉,我忽略了一些明显的东西。有什么想法吗?
【问题讨论】: