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

201
Vistas
problema con las relaciones, no encuentra propiedades

tengo un problema con las relaciones, no encuentra propiedades,

Error: Intentando obtener la propiedad 'servicio' de no objeto

Controlador:

 public function index(Request $personal){ $personal = Personal::where('nombre' , $personal)->with('nombre')->get(); $servicios = \App\Models\Eventos::orderByDesc('hora')->get(); return view('personal', compact('servicios','personal')); }

Modelo Servicios:

 class Servicios extends Model { use HasFactory; public function eventos() { return $this->belongsTo(Evento::class); } public function personal() { return $this->belongsTo(Personal::class); } }

Modelo Eventos:

 class Eventos extends Model { protected $table= 'eventos'; // protected $fillable = [ 'titulo', 'descripcion', 'fecha', 'hora', 'prioridad', 'servicio', 'personal', ]; public $timestamps = false; public function servicio() { return $this->belongsTo(Servicios::class); } public function personal() { return $this->belongsTo(Personal::class); }

En hoja.php:

 @foreach ($servicios as $hoy) <td>{{$hoy->servicio_id->servicio}}</td> @endforeach

Base de datos:

https://i.imgur.com/LvjR6qS.png

No entiendo el error por lo que no encuentro la propiedad

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

0

En Laravel puede acceder a las relaciones en el nombre de la función a la que se accede como una propiedad.

Lo siguiente debería solucionar su problema. Tener una relación fillable no hace nada.

 @foreach ($servicios as $hoy) <td>{{ $hoy->servicio->servicio_property_to_access }}</td> @endforeach

Actualizar

Tiene un campo de servicio en su modelo, si no recuerdo mal, puede ser útil cambiar el nombre de la relación.

 class Eventos extends Model { public function servicioRelationship() { return $this->belongsTo(Servicios::class); } @foreach ($servicios as $hoy) <td>{{ $hoy->servicioRelationship->servicio }}</td> @endforeach
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