我有三个表 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 表中获取所有用户以及 user_attributes 表的值。
如何在cakephp中编写查询?
我有两个模型 User
和 Attribute
。
提前致谢。
最佳答案
请按照以下步骤操作:
1-为表 user_attributes 创建模型 UserAttribute。
class UserAttribute extends AppModel{
}
2-在您的用户模型中创建 hasMany 与 UserAttribute 关联
class User extends AppModel{
public $hasMany = array(
'UserAttribute' => array(
'className' => 'UserAttribute',
'foreignKey' => 'user_id',
),
);
}
3-在 Controller 中查找查询:
$users= $this->User->find('all');
echo "<pre>";
print_r($users);
关于php - Cakephp 复杂查询构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40630923/