php - 刀片视图中的 Laravel 查询
问题描述
你如何翻译这个查询blade.php
$developer_contractor_association = DeveloperContractorAssociation::whereHas('defect_types', function ($query) use($id) {
$query->where('developer_contractor_associations.id', $id);
})->orwhereHas('contractor', function ($query) use($id) {
$query->where('developer_contractor_associations.id', $id);
})->first();
return view('dev-admin.contractors.associations.edit', ['developer_contractor_association' => $developer_contractor_association]);
我尝试使用上面的方法,但是当涉及到刀片时它不起作用
@foreach($developer_contractor_association as $dca_details)
<h2> {{ $dca_details->user->name }} </h2>
<p><i class="fas fa-map-marker-alt"></i>{{ $dca_details->contractor->address }}</p>
<p><i class="fas fa-envelope"></i>{{ $dca_details->user->email }}</p>
<p><i class="fas fa-phone"></i></i>{{ $dca_details->contractor->contact_no }}</p>
@endforeach
它说:
试图获取非对象的属性“名称”
更新 :
我在查询时犯了一些错误,我不需要foreach
,这修复了我的代码。谢谢大家帮忙
<div id="contractor-details" class="col-sm-12 col-md-12">
<h2> {{ $developer_contractor_association->contractor->user->name }} </h2>
<p><i class="fas fa-map-marker-alt"></i>{{ $developer_contractor_association->contractor->address }}</p>
<p><i class="fas fa-envelope"></i>{{ $developer_contractor_association->contractor->user->email }}</p>
<p><i class="fas fa-phone"></i></i>{{ $developer_contractor_association->contractor->contact_no }}</p>
</div>
解决方案
您应该使用get()
而不是first()
,然后使用dd($dca_details)
变量 inforeach()
查看 $dca_details 是否有用户,如果它有使用 dd($dca_details->user->name)
处理此错误的最佳方法是使用:
{{ $dca_details->user->name ?? '-' }}
推荐阅读
- c# - STA线程c#中的内存泄漏
- java - 如何确定要使用哪些 Eclipse 依赖项
- sql - 如何找到特定的员工总金额
- angular - 如何使用Angular 6从地图返回client_id
- python - 在 python 窗口中使用 mne_browse_raw 浏览脑电图
- node.js - 处理对话流中的音频播放完成回调(媒体响应)
- javascript - 如何让用户更漂亮地在客户端格式化代码?
- reactjs - 如果不支持用户的浏览器,我可以呈现警告消息吗?
- swift - 从 UserDefaults 中检索字符串不起作用
- java - 使用 teamcity 构建时生成工件的示例 java 项目