plan logs errores php model laravel-4 relation cartalyst-sentry

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;