我有如下创建的2个模型:
Employee.PHP
<?PHP
namespace App;
use Illuminate\Database\Eloquent\Model;
class Employee extends Model
{
public function grades(){
return $this->belongsTo(Grade::class);
}
}
并且
Grade.PHP
<?PHP
namespace App;
use Illuminate\Database\Eloquent\Model;
class Grade extends Model
{
public function employee(){
return $this->hasMany(Employee::class);
}
}
$a=App\Employee::find(15);<br>
$a->grades->code
它给我错误:
PHP Notice: Trying to get property ‘code’ of non-object in Psy Shell code on line 1*
表员工:
表等级:
解决方法:
将Employee模型中的grades()方法更改为grade().
Eloquent使用方法名称来确定要用于该关系的数据库列.如果您将列名称更改为grades_id,或者您可以选择在关系上定义列,例如:
public function grades()
{
return $this->belongsTo(Grade::class, 'grade_id');
}