我正在学习 Laravel 5.8,我正在构建一个工作门户网站。
我的问题是为什么会发生此错误。我已经检查了我的表,很明显,我在公司表中有一个列 cname(company name)。而且我还有一个对象。
以下是我的代码。如果有人帮助我,我真的很高兴。
此代码用于识别用户是求职者还是雇主。我想注册为求职者。
应用程序.blade.php
<li class="nav-item dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
@if(Auth::user()->user_type='company')
{{Auth::user()->company->cname}}
@else
{{Auth::user()->name}}
@endif
<span class="caret"></span>
</a>
用户名
use App\Profile;
use App\Company;
public function profile(){
return $this->hasOne(Profile::class);
}
public function company(){
return $this->hasOne(Company::class);
}
网页.php
Route::POST('employer/register', 'EmployerRegisterController@employerRegister')->name('emp.register');
Route::view('employer/register','auth.employer-register')->name('employer.register');
公司控制器.php
public function store(Request $request){
$user_id = auth()->user()->id;
Company::where('user_id',$user_id)->update([
'address'=>request('address'),
'phone'=>request('phone'),
'website'=>request('website'),
'slogan'=>request('slogan'),
'description'=>request('description')
]);
return redirect()->back()->with('message','Company Successfully Updated !');
}
任何帮助表示赞赏。
错误抛出,因为Auth::user()->company
是Null
。尝试获取这样的关系属性时使用三元运算符Auth::user()->company->cname ?? ''
<li class="nav-item dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
@if(Auth::user()->user_type == 'company')
{{Auth::user()->company->cname ?? ''}}
@else
{{Auth::user()->name}}
@endif
<span class="caret"></span>
</a>
</li>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句