php - logs - sentry report
Manera correcta de usar las relaciones del modelo de usuario de Laravel 4 con el paquete Sentry 2 (1)
Estoy intentando descubrir cómo devolver las relaciones que configuré para mi modelo de Usuario cuando uso Sentry 2.
Normalmente, tengo un usuario recuperado así:
$user = User::find(1);
// get some relation
return $user->profile->profile_name;
Sin embargo, ahora que tengo el Sentry 2 implementado, puedo recuperar al usuario conectado de esta manera:
$user = Sentry::getUser();
De esta forma, puedo acceder fácilmente a la tabla de users
en mi base de datos, pero ¿cómo hago para recuperar las relaciones y los métodos que he configurado en mi modelo User.php
?
Esto parece una forma de clumpsy, y no Laravel-ish:
User::find(Sentry::getUser()->id)->profile->wizard_completed;
Parece un poco ... al revés.
¿Pueden ayudarme? =)
Extienda Sentry para crear su propio modelo de usuario con sus relaciones en él:
<?php
use Cartalyst/Sentry/Users/Eloquent/User as SentryModel;
class User extends SentryModel {
public function profile()
{
return hasOne(...);
}
}
Publicar la configuración del centinela:
php artisan config:publish cartalyst/sentry
Y dile a Sentry que use tu modelo, que ahora que extiende Sentry tiene todas sus funcionalidades más las tuyas:
''model'' => ''User'',
Entonces podrás:
echo Sentry::getUser()->profile->wizard_completed;