Cakephp复杂查询构建


Cakephp Complex Query buiding

我有三个表users, attributes和user_attributes。

users[id, name, username, password, dob, gender, isactive, registered_on],
attributes[id, name, isactive],
user_attributes[id, user_id, attribute_id]

这是我的带有字段的表结构。现在我想写一个查询,将获取所有的用户从用户表以及user_attributes表的值,如果有任何行存在于user_attributes表

如何在cakephp中编写查询?我有两个型号UserAttribute

按以下步骤操作:

1-为表user_attributes创建一个Model UserAttribute

class UserAttribute extends AppModel{
}

2-在用户模型中创建与UserAttribute的hasMany关联

class User extends AppModel{
   public $hasMany = array(
            'UserAttribute' => array(
            'className' => 'UserAttribute',
            'foreignKey' => 'user_id',
            ),
     );
 }

3- Do find query in your controller:

$users= $this->User->find('all');
echo "<pre>";
print_r($users);