ErrorException(E_ERROR)试图获取laravel 5.5中非对象的属性“名称”

时间:2019-04-03 10:52:18

标签: php laravel laravel-5 eloquent

当我尝试访问从视图内部的控制器传递的变量时遇到此错误。我使用以下命令创建了控制器:

php artisan make:controller CompaniesController --resource

所以我有所有可以使用的资源方法。

  

这是我给的路线

Route::resource('/createcompany','CompaniesController' );
  

这是我控制器内部的功能

public function show($id)
{
  $company = Company::find($id);
  return view('pages.admin.showcompany')->with('company', $company);
}
  

公司具有ID和名称作为属性

     

这是我的观点

@extends('layouts.app')

@section('content')

<h1>{{$company->name}} </h1>

@endsection

我查找了类似的问题(thisthisthis),但它们没有帮助。

3 个答案:

答案 0 :(得分:2)

您需要检查Company对象,例如:

public function show($id)
{
    $company = Company::find($id);

    if( is_null($company) ){
         dd( "There's no company with the id=".$id);
    }

    return view('pages.admin.showcompany')->with('company', $company);
}

答案 1 :(得分:1)

为什么不使用if(sheet.getRange(your range/cell/var here).getValue() == 'TRUE' { your code here } 方法,如果没有可用的模型,它将自动向您发送未找到的模型异常。

findOrFail()

答案 2 :(得分:0)

您可以使用以下代码进行表演:


public function show(Company $company)
    {
        return view('pages.admin.showcompany',compact('company'));
    }