I want to compare two columns from two different tables, I have column called “Features” in Model Attrition_correlators and another “Topcorrelators” in Membersdetail. Since I am new to laravel not sure how I can get the value and compare both values. Here is my code:
Controller.php
public function show(Memberdetails $Memberdetail, Attrition_correlators $Attrition_correlation_list)
{
return view('admin.members.Detailspage',compact('Memberdetail','Attrition_correlation_list'));
}
<div class="card-body p-0">
<table class="table table-striped">
@foreach(explode(',', $Memberdetail->Topcorrelators) as $row)
<tr>
<td>
{{ $row }}
</td>
@if($Attrition_correlation_list->Features == $Memberdetail->Topcorrelators)
<td>
1
</td>
@else
<td>
0
</td>
@endif
</tr>
@endforeach
I want to compare the data which I am getting $row with the values in “features” if they match Want to get the value of correlation which is in Model “Attrition_correlators” under .
Can anyone help me out in this!
Thanks in Advance
Below is the error I am getting
Advertisement
Answer
It’s because you get a collection of Attrition_correlation_list. In this case you need to iterate over it to get properties:
@foreach(explode(',', $Memberdetail->Topcorrelators) as $row)
<tr>
<td>
{{ $row }}
</td>
@foreach($Attrition_correlation_list as $item)
@if($item->Features == $row)
@else
@endif
@endforeach
</tr>
@endforeach
You also need to edit your controller like below. Because you passed null value in $Attrition_correlation_list
public function show(Memberdetails $Memberdetail)
{
$Attrition_correlation_list = Attrition_correlators::all();
return view('admin.members.Detailspage',compact('Memberdetail','Attrition_correlation_list'));
}