Wie kann ich Assoziationen zusammen mit authentifizierten Benutzerdaten abrufen?
Ich habe einUsers
table und einUsersProfiles
table - die beiden sind offensichtlich verwandt und die Benutzertabelle speichert basicuser_id
, username
, password
während die Tabelle users_profiles @ speichefirstname
, lastname
, job_title
etc
In CakePHP 3 gibt der Aufruf von Authentication Component bei der Anmeldung die grundlegende Benutzertabellenzeile zurück. Ich möchte das gleiche ändern, um auch die entsprechende Profilzeile zurückzugeben. Wie kann ich das machen
Ich habe einen Weg gefunden, es zu tun - bin mir aber nicht sicher, ob es einen eleganteren oder einfacheren Weg gibt.
public function login() {
if ($this->request->is('post')) {
$user = $this->Auth->identify();
if ($user) {
// load profile and associate with user object
$profile = $this->Users->UsersProfiles->get($user['id']);
$user['users_profile'] = $profile;
$this->Auth->setUser($user);
return $this->redirect($this->Auth->config('loginRedirect'));
}
$this->Flash->error(__('Invalid username or password, try again'));
}
}