拉拉维尔 找到并首先不能正常工作



在我的函数中显示我的员工控制器显示视图的错误 id 详细信息。除了使用 first(( 之外,还有什么理想的解决方案?

如果我只是要使用

$employee = Employee::find($id);

它将起作用,但它不会显示"公司"详细信息

但是如果我使用

$employee = Employee::find($id)->with('company')->first();

它将检索第一个 ID,并且不会使用该find($id)

我希望输出 id 9,但由于控制器中的first(),它保留了 id 8。

您可以使用with()静态方法,请参考文档

例如:

$employee = Employee::with('company')->find($id);

或者您可以找到记录并加载关系

$employee = Employee::findOrFail($id)->load('company');

根据laravel文档,你可以使用其他两种方法,这使得编码更有效率。

  • 查找或失败
  • 先败

您可以使用 FirstOrFail 方法在 laravel 中轻松获取第一个值。

对于您的代码,它将是,

$employee = Employee::firstOrFail();

欲了解更多信息,请尝试此链接

Stackoverflow findorfail

你应该在find之前添加with

$employee = Employee::with('company')->find($id)->first();
// OR try simple way
$employee = Employee::with('company')->findOrFail($id);

请尝试使用 :

Employee::join('company','employee.id','=','company.employee_id')->where('employee.id','='$id')->first();

你应该使用laravel Eloquent FindOrFail

有关详细信息,请参阅文档检索单个模型/聚合

相关内容

  • 没有找到相关文章

最新更新