首页 > 解决方案 > 在 null 上调用成员函数 empresas() - Laravel

问题描述

我有两个模型:Empresa 和 Postulante。这种关系是多对多的。

企业模式

public function postulantes()
{
    return $this->belongsToMany(Postulante::class);
}

后置模型

public function empresas()
{
    return $this->belongsToMany(Empresa::class)->where('empresa_postulante.activo', 1)->orderBy('empresa_postulante.created_at');
}

PostulanteController(获得一份 Postulante 的 Empresas)

public function index()
{
    $usuario_actual = \Auth::user(); //obtengo los datos del usuario en sesion
    $usuario_id = $usuario_actual->id;
    $postulante = Postulante::where('pos_usuario', $usuario_id)->first();
    $empresas = $postulante->empresas();

    return view('postulantes/dash-postulante', compact('empresas'));
}

由于关系表 (empresa_postulante) 中没有数据,我收到以下错误消息:

在 null 上调用成员函数 empresas()

标签: phplaravellaravel-5eloquent

解决方案


看起来像:

$postulante = Postulante::where('pos_usuario', $usuario_id)->first();

...没有返回任何结果。


推荐阅读