Ich verwende Komponisten Zizaco/entrust
und Laravel 5.3
‚s Auth
aus dem Kasten heraus,Laravel 5.3 und Zizaco/betrauen: Feld ‚expired_at‘ hat keinen Standardwert
ich die Methode create
von RegisterController.php
wie folgt geändert :
protected function create(array $data)
{
$user =User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
$user->roles()->attach($data['role']);
return $user;
}
Die ursprüngliche Methode create
ist wie folgt:
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
}
Wenn ich einen Benutzer mit dem modifizierten Verfahren registriere, gibt es 2 Probleme:
1 ist ein Fehler auf Tabelle role_user
:
SQLSTATE[HY000]: General error: 1364 Field 'expired_at' doesn't have a default value (SQL: insert into `role_user` (`role_id`, `user_id`) values (2, 5))
2, andere Frage ist, auf dem Tisch users
, das Feld remember_token
von Tabelle users
ist null.
_expired_at_ kein hat Standardwert, so dass Sie es beim Zuweisen einer neuen Rolle selbst festlegen müssen. – Erik