Eloquent 此集合实例上不存在属性[bank]。(视图:C:\xampp\htdocs\booking\resources\views\client\payment\make\u payment.blade.php)
我正在尝试获取数据库中当前的所有银行详细信息 我试过使用这个代码Eloquent 此集合实例上不存在属性[bank]。(视图:C:\xampp\htdocs\booking\resources\views\client\payment\make\u payment.blade.php),eloquent,laravel-5.7,Eloquent,Laravel 5.7,我正在尝试获取数据库中当前的所有银行详细信息 我试过使用这个代码 $settings=Setting::where(['is_current' => 1])->get(); 但它给了我上面的错误 我做了一些研究,得到的答案告诉我首先添加到我的代码中,如下所示 $settings=Setting::where(['is_current' => 1])->first(); 但它只返回一列(满足提供条件的第一列) 当我尝试转储第一个代码的输出时(使用get
$settings=Setting::where(['is_current' => 1])->get();
但它给了我上面的错误
我做了一些研究,得到的答案告诉我首先添加到我的代码中,如下所示
$settings=Setting::where(['is_current' => 1])->first();
但它只返回一列(满足提供条件的第一列)
当我尝试转储第一个代码的输出时(使用get()),我得到了以下结果
当我尝试转储第二个代码的输出时(使用first()),我得到的就是这个
这就是我的观点
@foreach($settings as $setting)
@if($settings->bank == 'Mpesa')
<li class="text-black text-center">{{ $setting->bank }}<br>
Paybill No: {{ $setting->account_no }} <br>
Account no: {{ $setting->branch }} <br></li>
@endif
<li class="text-black text-center">our {{ $setting->bank }} bank account<br>
Account No: {{ $setting->account_no }} <br>
Account Name: {{ $setting->name }} <br>
Branch: {{ $setting->branch }} <br></li>
@endforeach
@foreach($settings作为$setting)
@如果($settings->bank=='Mpesa')
{{{$setting->bank}}
工资单编号:{{$setting->account_No}}
账号:{{$setting->branch}}
@恩迪夫
我们的{{{$setting->bank}}银行账户
帐号:{{$setting->Account\u No}}
帐户名称:{{$setting->Name}}
分支:{{$setting->Branch}}
@endforeach
我可能做错了什么?您需要使用
->get()
,然后需要更改
@if($settings->bank == 'Mpesa')
到
在您的视图文件中
还要将@else
子句添加到@if…@endif
语句的其他列表中
<ol class="text-black text-center">
@foreach($settings as $setting)
@if($setting->bank == 'Mpesa')
<li class="text-black text-center">{{ $setting->bank }}<br>
Paybill No: {{ $setting->account_no }} <br>
Account no: {{ $setting->branch }} <br>
</li>
@else
<li class="text-black text-center">our {{ $setting->bank }} bank account<br>
Account No: {{ $setting->account_no }} <br>
Account Name: {{ $setting->name }} <br>
Branch: {{ $setting->branch }} <br>
</li>
@endif
@endforeach
</ol>
@foreach($settings作为$setting)
@如果($setting->bank=='Mpesa')
{{{$setting->bank}}
工资单编号:{{$setting->account_No}}
账号:{{$setting->branch}}
@否则
我们的{{{$setting->bank}}银行账户
帐号:{{$setting->Account\u No}}
帐户名称:{{$setting->Name}}
分支:{{$setting->Branch}}
@恩迪夫
@endforeach
在条件和foreach循环下打印两次Mpesa。这是可以避免的吗?虽然我已经通过添加@else
来处理另一部分来解决它,但这仍然是一样的。我还更新了您的答案,以帮助其他有相同问题的人。谢谢
<ol class="text-black text-center">
@foreach($settings as $setting)
@if($setting->bank == 'Mpesa')
<li class="text-black text-center">{{ $setting->bank }}<br>
Paybill No: {{ $setting->account_no }} <br>
Account no: {{ $setting->branch }} <br>
</li>
@else
<li class="text-black text-center">our {{ $setting->bank }} bank account<br>
Account No: {{ $setting->account_no }} <br>
Account Name: {{ $setting->name }} <br>
Branch: {{ $setting->branch }} <br>
</li>
@endif
@endforeach
</ol>