Laravel: Auth::user()->id intentando obtener una propiedad de un no objeto
Estoy recibiendo el siguiente error "intentando obtener una propiedad de un no objeto" cuando envío un formulario para añadir un usuario, el error está aparentemente en la primera línea: Auth::user()->id de lo siguiente:
$id = Auth::user()->id;
$currentuser = User::find($id);
$usergroup = $currentuser->user_group;
$group = Sentry::getGroupProvider()->findById($usergroup);
$generatedPassword = $this->_generatePassword(8,8);
$user = Sentry::register(array('email' => $input['email'], 'password' => $generatedPassword, 'user_group' => $usergroup));
$user->addGroup($group);
¿Alguna idea? He buscado un rato y todo lo que veo dice que esto debería funcionar bien. Mi usuario está conectado usando el paquete de autenticación Sentry 2.
68
3
Si estás usando
Sentry
comprueba el usuario conectado conSentry::getUser()->id
. El error que obtienes es queAuth::user()
devuelve NULL y trata de obtener el id de NULL de ahí el errortratando de obtener una propiedad de un no objeto
.Haz un Auth::check() antes para asegurarte de que estás bien conectado:
id está
protegido
, simplemente añade un método público en tu/models/User.php
.para que puedas llamarlo
recuerde siempre probar si el usuario está registrado...