Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Dudas sobre Laravel

Estas en el tema de Dudas sobre Laravel en el foro de PHP en Foros del Web. Buenas a todos! Llevo varios dias aprendiendo laravel y voy bien, pero aun se me escapan cosas basicas por asi decirlo. ME gustaria que me ...
  #1 (permalink)  
Antiguo 20/10/2014, 12:09
Avatar de Zonabeta  
Fecha de Ingreso: julio-2014
Ubicación: Madrid
Mensajes: 11
Antigüedad: 9 años, 9 meses
Puntos: 0
Dudas sobre Laravel

Buenas a todos!

Llevo varios dias aprendiendo laravel y voy bien, pero aun se me escapan cosas basicas por asi decirlo.

ME gustaria que me ayudarais a:
  1. Como restringir una pagina a un visitante, y a un usuario.
  2. Como recaudar datos de informacion de usuario y mostrarlos en una tabla

Esas son mis dudas de momento, ya me iran saliendo mas.

Gracias!
  #2 (permalink)  
Antiguo 20/10/2014, 13:22
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Dudas sobre Laravel

Cita:
Como restringir una pagina a un visitante, y a un usuario.
http://laravel.com/docs/4.2/routing#route-filters
http://laravel.com/docs/4.2/security
Cita:
Como recaudar datos de informacion de usuario y mostrarlos en una tabla
http://laravel.com/docs/4.2/html#opening-a-form
http://laravel.com/docs/4.2/templates
http://laravel.com/docs/4.2/eloquent

En términos generales hay que leer la documentación
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 21/10/2014, 04:16
Avatar de Zonabeta  
Fecha de Ingreso: julio-2014
Ubicación: Madrid
Mensajes: 11
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Dudas sobre Laravel

Vale, fallo mio por no informarme. Gracias!

Y tengo otra duda, en cuanto a rutas, tengo este codigo:
Código PHP:
Route::group(array('prefix'=>'admin','before' => 'auth'), function()
{
 
    
//sólo pueden acceder usuarios con role_id 3
    
Route::get('/',array("before" => "roles:3,perfil", function()
    {
 
        return 
View::make('adminPage');
        
    }));
 
    
//sólo pueden acceder usuarios con role_id 2 y 3
    
Route::get('user',array("before" => "roles:2-3,home", function()
    {
 
        return 
"Como mínimo tu role debe ser editor, tu eres " getRole(Auth::user()->role_id);
        
    }));
 
    
//sólo pueden acceder usuarios con role_id 1, 2 y 3
    
Route::get('show_reply',array("before" => "roles:1-2-3,home", function()
    {
 
        return 
"Como mínimo tu role debe ser suscriptor, tu eres " getRole(Auth::user()->role_id);
        
    }));


    
//sólo pueden acceder invitados
    
Route::get('ads',array("before" => "roles:0,home", function()
    {
 
        
    }));
 
 
}); 
Como puedo hacer para englobar todas las rutas procedentes de /admin solo puedan acceder usuarios con rol 3
  #4 (permalink)  
Antiguo 21/10/2014, 10:04
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Dudas sobre Laravel

Este tema viene en la documentación, necesitas hacer un filtro que valide que tu usuario tiene el rol 3:
archivo filters.php
Código PHP:
Ver original
  1. Route::filter('admin', function()
  2. {
  3.     // role = 3 accede, si no redirecciona
  4. });
routes.php
Código PHP:
Ver original
  1. Route::when('admin/*','admin');
  2.  
  3. Route::group(array('prefix'=>'admin','before' => 'auth'), function()
  4.     {
  5.  
  6.         //sólo pueden acceder usuarios con role_id 3
  7.         Route::get('/', function()
  8.         {
  9.             return View::make('adminPage');
  10.         });
  11.  
  12.     });
Route::when aplica el filtro para cualquier ruta que tenga /admin/lo_que_sea
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 22/10/2014, 03:43
Avatar de Zonabeta  
Fecha de Ingreso: julio-2014
Ubicación: Madrid
Mensajes: 11
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Dudas sobre Laravel

Perdona ser pesado, pero dentro de:
Código PHP:
Ver original
  1. Route::filter('admin', function()
  2. {
  3.     // role = 3 accede, si no redirecciona
  4. });

¿Como filtro, con un IF? O con una ruta? Esque me pierdo facil ...
  #6 (permalink)  
Antiguo 22/10/2014, 08:40
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Dudas sobre Laravel

Asi es necesitas hacer un if, si no se cumple la condición que direccione a otra parte.
Código PHP:
Ver original
  1. Route::filter('admin', function()
  2. {
  3.     if(Auth::check()){
  4.         $user = Auth::user();
  5.         //tu logica
  6.     }else{
  7.         return Redirect::to('/');
  8.     }
  9. });
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Etiquetas: dudas, laravel, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:47.