Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

424
Views
Laravel pertenece a la relación: tratando de obtener la propiedad de un no objeto

Usuario.php

 class User extends Authenticatable { public function company() { return $this->belongsTo('App\Company'); } }

Empresa.php

 class Company extends Model { public function users() { return $this->hasMany('App\User'); } }

Usuarios de mesa

id nombre empresas_id

Empresas de mesa

nombre de identificación

Estoy tratando de obtener el nombre de la empresa adjunta al usuario.

 $user = User::findOrFail(Auth::user()->id); $companyName = $user->company()->first()->name;

Recibí este mensaje de error Trying to get property of non-object

No entiendo lo que me falta... Gracias de antemano

about 4 years ago · Santiago Trujillo
3 answers
Answer question

0

De forma predeterminada, Eloquent toma el nombre de la relación + '_id' para adivinar la clave externa.

Solución A

 public function company() { return $this->belongsTo('App\Company', 'companies_id') }

Solución B

 public function companies() { return $this->belongsTo('App\Company') }
about 4 years ago · Santiago Trujillo Report

0

También puede ser nulo su campo company_id

Esa es la razón por la que debe verificar su campo en el bucle.

fe

 foreach($users as $user) { if(isset($user->company->title)): echo $user->company->title; else: echo 'empty'; endif; }
about 4 years ago · Santiago Trujillo Report

0

Pruébelo sin el método "primero".

 $companyName = $user->company()->name;
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!