Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

330
Vistas
Cómo usar variables como nombre de atributo en Laravel Eloquent

¿Hay alguna forma de usar variables en elocuente Ejemplo:

 public function showLessons($skill) { $user = (\App\User::where('id', Auth::user()->getId())->first()); $type = $user->type; if ($type === "student") { $bs = ($user->student_bronze_ . $skill); $ss = ($user->student_silver_ . $skill); $gs = ($user->student_gold_ . $skill); } elseif ($type === "school") { $bs = ($user->school_bronze_ . $skill); $ss = ($user->school_silver_ . $skill); $gs = ($user->school_gold_ . $skill); }; return view('pages.lessons', compact("bs", "ss", "gs")); }

Estoy tratando de verificar si el nivel del usuario es igual o superior a la identificación de la lección

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Creo que su pregunta principal aquí es: ¿Puede usar una variable como nombre de atributo en un modelo laravel Eloquent?

La respuesta es sí, lo envuelves entre llaves {}

 $user->{$type.'_'.$medal.'_'.$skill};

Si mueve parte de su código al modelo de usuario, su controlador se vuelve un poco más ordenado.

 // User.php public function skill($medal, $skill) { $type = $this->type; return $this->{$type.'_'.$medal.'_'.$skill}; }

entonces su controlador se vuelve más limpio:

 public function showLessons($skill) { $user = Auth::user(); $bs = $user->skill('bronze', $skill); $ss = $user->skill('silver', $skill); $gs = $user->skill('gold', $skill); return view('pages.lessons', compact("bs", "ss", "gs")); }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda