カスタム ファインダーを使用してロール ベースの認証システムを実装しようとしています。
public function findAuth(\Cake\ORM\Query $query, array $options)
{
$query
->select(['id', 'username', 'passwordHash', 'locked', 'roles.role'])
->group('username')
->join([
'table' => 'user_roles',
'conditions' => ['user_roles.userid = Users.id']])
->join([
'table' => 'roles',
'conditions' => ['roles.id = user_roles.role']])
->toArray()
;
return $query;
}
私が必要とする結果のmysqlクエリは次のとおりです。ユーザーからusers.id、username、passwordHash、locked、group_concat(roles.role)の役割を選択しますusers.id でグループ化